js数组有forEach的nodejs 遍历json数组方法,能不能给json对象也写一个这样的方法方便nodejs 遍历json数组?

JS简单循环遍历json数组的方法
作者:西瓜霜
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了JS简单循环遍历json数组的方法,结合实例形式简单分析了JavaScript循环遍历json数组的方法,并提供了jQuery遍历json的方法,需要的朋友可以参考下
本文实例讲述了JS简单循环遍历json数组的方法。分享给大家供大家参考,具体如下:
例如数据库里面的json字符串是这样的
var str = '[{"name":"宗2瓜","num":"1","price":"122"},{"name":"宗呱呱","num":"1","price":"100"}]';
var xqo = eval('(' + str + ')');
for(var i in xqo){
  alert(xqo[i].name);
上面的是js的,下面的是jquery来解析json字符串,
var cc = jQuery.parseJSON(data);
alert(cc[0].title);
循环的话,和上面一样
更多关于JavaScript相关内容可查看本站专题:《》、《》、《》、《》、《》、《》、《》及《》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具js对象数组遍历 - CSDN博客
js对象数组遍历
前言:最近由于项目需求,新增了一个行程搜索结果页,搜索的关键字需要高亮。且从搜索结果页进入原来的行程详情页,原来详情页中的关键字也同样需要做高亮处理。由于详情页是之前做好的,页面渲染用的是underscore模板。一个页面中大大小小的模板有很多,为了避免麻烦和便于管理。我决定不对原有的模板结构进行修改,直接将从服务端的数据进行过滤一遍,然后对需要高亮的关键字进行数据替换。随意会增加页面初始渲染时间,可总体从后期页面维护和管理来说这样牺牲点性能也是可以接受的。
技术:主要是利用递归方法对后端的返回的json数据进行遍历。
我们都知道从后端返回的json数据是一个Object,Object里面有会对象和数组,数组里面可能还会有对象,数组里面的对象可能还会有对象和数组。总之就是像一棵树一样的可以无穷无尽的扩展下去。
var jojo=function(data){
//技巧:用constructor 去判断数据类型比typeof 和instanceof 更好使
if(data.constructor==Object){
for(var i in data){
if(data[i].constructor==String|| data[i].constructor==Number){
console.log('对象值的输出:'+data[i]);
//递归调用
jojo(data[i]);
}else if(data.constructor==Array){
for(var i= 0,max=data.i&i++){
if(data[i].constructor==String|| data[i].constructor==Number){
console.log('数组值的输出:'+JSON.stringify(data[i]));
//递归调用
jojo(data[i]);
//测试数据
var testData={
&item1&:'item1',
&item2&:[{
&item21&:'item21'
&item22&:'item22'
&item23&:'item23'
&item31&:[
&item32&:'item32'
&item4&:['item41','item42']
jojo(testData);
本文已收录于以下专栏:
相关文章推荐
一.纯js实现
Js代码  
  
  var obj = {&player_id&:&GS001&,&event_id&:...
我为什么把这些内容放在一个文章了说呢?因为在真实使用的时候一般都会设计到。在读取cookei时肯定会有相应的其他操作。
用jquery实现对cookie的操作,这里用到的是:jquery.coo...
js数组遍历相信大家都不陌生,很多人会想到for循环和 for...in...循环,但是千万不要使用for...in...循环遍历数组,特别是如果你想写点有用的,能够移植的代码时。下面我们来看看这个可...
我们如何遍历数组中的元素?for (var index = 0; index & myArray. index++) {
console.log(myArray[index]);
JS 数组遍历JS 数组遍历filter
lastIndexOf
1.filter()
语法 var new_arrary = arr...
5种元素遍历方法,都需要回调函数every()如果每一项都返回true,结果是true;
如果有一项返回false,那么立刻停止遍历返回false var arr = [&a&, &b&, &c&...
js数组遍历有很多方法,比如for循环
js数组遍历方法个人笔记
他的最新文章
讲师:何宇健
讲师:董岩
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
如题。。。。。。。。。。。。。。。。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
拿到你需要的JSON字符串,JSON.parse解析成对象,再用for in循环遍历。代码的话大概是这样:
var obj = JSON.parse(JSON串);
for(var k in obj){
console.log(k); //对象中键值对的key
console.log(obj(k)); //对象中键值对的value
希望能帮助到你
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
const json = { name: '小缘', age: 14 }
Object.keys(json).forEach(key =& {
(key + ':', json[key])
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:Javascript 数组循环遍历之forEach - CSDN博客
Javascript 数组循环遍历之forEach
1.& js 数组循环遍历。
数组循环变量,最先想到的就是 for(var i=0;i&i++)这样的方式了。
除此之外,也可以使用较简便的forEach 方式
2.& forEach 函数。
Firefox 和Chrome 的Array 类型都有forEach的函数。使用如下:
&!--Add by oscar999--&
&!DOCTYPE HTML PUBLIC &-//W3C//DTD HTML 4.0 Transitional//EN&&
&TITLE& New Document &/TITLE&
&META NAME=&Author& CONTENT=&oscar999&&
var arryAll = [];
arryAll.push(1);
arryAll.push(2);
arryAll.push(3);
arryAll.push(4);
arryAll.forEach(function(e){
但是以上,代码在IE中却无法正常工作。
因为IE的Array 没有这个方法
alert(Array.prototype.forEach);执行以上这句得到的是& &undefined&, 也就是说在IE 中 Array 没有forEach的方法。
3.& 让IE兼容forEach方法
既然IE的Array 没哟forEach方法, 我们就给它手动添加这个原型方法。
//Array.forEach implementation for IE support..
//https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach
if (!Array.prototype.forEach) {
Array.prototype.forEach = function(callback, thisArg) {
if (this == null) {
throw new TypeError(& this is null or not defined&);
var O = Object(this);
var len = O.length &&& 0; // Hack to convert O.length to a UInt32
if ({}.toString.call(callback) != &[object Function]&) {
throw new TypeError(callback + & is not a function&);
if (thisArg) {
while (k & len) {
if (k in O) {
kValue = O[k];
callback.call(T, kValue, k, O);
详细介绍可以参照:
4. 如何跳出循环?
&Js 此种状况的forEach 不能使用continue,& 可以使用如下两种方式:
1. if 语句控制
2. return . (return true, false)
return --& 类似continue
以下例子是取出数组中2的倍数和3的倍数的数;
&!--Add by oscar999--&
&!DOCTYPE HTML PUBLIC &-//W3C//DTD HTML 4.0 Transitional//EN&&
&TITLE& New Document &/TITLE&
&META NAME=&Author& CONTENT=&oscar999&&
if (!Array.prototype.forEach) {
Array.prototype.forEach = function(callback, thisArg) {
if (this == null) {
throw new TypeError(& this is null or not defined&);
var O = Object(this);
var len = O.length &&& 0; // Hack to convert O.length to a UInt32
if ({}.toString.call(callback) != &[object Function]&) {
throw new TypeError(callback + & is not a function&);
if (thisArg) {
while (k & len) {
if (k in O) {
kValue = O[k];
callback.call(T, kValue, k, O);
var arryAll = [];
arryAll.push(1);
arryAll.push(2);
arryAll.push(3);
arryAll.push(4);
arryAll.push(5);
var arrySpecial = [];
arryAll.forEach(function(e){
if(e%2==0)
arrySpecial.push(e);
}else if(e%3==0)
arrySpecial.push(e);
使用return 达到以上效果
arryAll.forEach(function(e){
if(e%2==0)
arrySpecial.push(e);
if(e%3==0)
arrySpecial.push(e);
至于如何写类似break 的效果,目前尚未找到比较好的办法。
有搜索一下,有的说return false 可以达成, 试了一下, 效果和return 和return ture 是一样的。
本文已收录于以下专栏:
相关文章推荐
由于项目要用到非对称加密解密签名校验什么的,于是参考《Java加密解密的艺术》写一个RSA进行加密解密签名及校验的Demo,代码很简单,特此分享!RSA加密解密类:package com.
If you need this, you shouldn’t use forEach, but one of the other methods
1. continue. 可以使用return。
  $(&***&).each(function(){
     if(a == b){
         // co...
PHP中用foreach()循环中,想要在循环的时候,当满足某个条件时,想要跳出本次循环继续执行下次循环,或者满足某个条件的时候,终止foreach()循环,分别会用到:continue 与 brea...
今天使用lambda表达式处理集合时,发现对return、break以及continue的使用有点迷惑,于是自己动手测试了一下,才发现在使用foreach()处理集合时不能使用break和contin...
(这些例子已经在node.js 6.9.x下,运行通过)
js中循环语句有forEach,for in,for of 三种了
一般的遍历数组的方法:
var array = [1,2,3,4,...
其实在js中没有foreach关键字,只不过是通过for in来实现,如下代码:
var myobj = new Object();
myobj.color = 'blue';
myobj.na...
forEach map
/link?url=ghH56n4wJHqBWQv5H7W_8ngLeKRhIXdKCeN8aBjJLgJqVUBjGzYKTJsrFcWjorkTpWXX...
$arr=array(3435243,'第一层数组',array(342342,'第二层数组',array(23242,'第s三层数组',array(34243,'第四层数组',))));
//这个四...
他的最新文章
讲师:何宇健
讲师:董岩
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 js 遍历树形json数组 的文章

 

随机推荐