首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery数组迭代

Jquery数组迭代
EN

Stack Overflow用户
提问于 2014-03-26 13:52:09
回答 3查看 71关注 0票数 0

如何遍历Json对象?

代码语言:javascript
复制
var obj = { "field": {"row1" : {"col1":10,"col2":20,"col3":30},"row2" : {"col1":20,"col2":30,"col3":40}}}

$(obj).each(function(i,val) {
    child_obj =val
    while(children = child_obj.children() ) {
        child_obj = children .children()
    }
});

当我在JSON对象上调用子函数时,它没有得到子函数。

子函数是否只适用于DOM元素,而不适用于JSON?

如何遍历JSON对象并获取列值?

EN

回答 3

Stack Overflow用户

发布于 2014-03-26 14:16:23

代码语言:javascript
复制
var obj = { "field": {"row1" : {"col1":10,"col2":20,"col3":30},"row2" : {"col1":20,"col2":30,"col3":40}}}
$.each(obj.field,function(i,val){
    console.log(val);
    $.each(val, function(col, colVal){
        console.log(col);
        console.log(colVal);
    });
})

看一下这个迭代。jsfiddle

票数 0
EN

Stack Overflow用户

发布于 2014-03-26 14:31:50

这是你需要的吗?请查收

代码语言:javascript
复制
var obj = { "field": {"row1" : {"col1":10,"col2":20,"col3":30},"row2" : {"col1":20,"col2":30,"col3":40}}}
$.each(eval(obj.field), function(i, val){
    console.log(val.col1+','+val.col2+','+val.col3);
});
票数 0
EN

Stack Overflow用户

发布于 2014-03-27 03:01:40

遍历JSON对象

Demo

代码语言:javascript
复制
var root = {
    leftChild: {
        leftChild: {
            leftChild: null,
            rightChild: null,
            data: 42
        },
        rightChild: {
            leftChild: null,
            rightChild: null,
            data: 5
        }
    },
    rightChild: {
        leftChild: {
            leftChild: null,
            rightChild: null,
            data: 6
        },
        rightChild: {
            leftChild: null,
            rightChild: null,
            data: 7
        }
    }
};
function getLeaf(node) {
    while(node instanceof Object) {
    if (node.leftChild) {
        node = getLeaf(node.leftChild);
    } else if (node.rightChild) {
        node = getLeaf(node.rightChild);
    } else { // node must be a leaf node
        return node;
    }
        console.log(node);
   }
}

alert(getLeaf(root).data);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22652560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档