js遍历不规则的多维数组(json对象)

直接进入正文:

我们有时候处理数据,可能会遇到一些不规则(无法预料的数据结构),那么拿到这种数据我们如何进行遍历操作呢?举个例子:

var data= {
        a: { one: 1, two: 2, three: {four:'2',five:'4'} },
        b: { six: 4, seven: 5, eight: 6 },
        c: { nine: 7, ten: 8}
    }
比如上边的数据(实际情况是这个数据会有各种不可预料的变化),如果想遍历这种数据,用单纯的for in就无法遍历了。

其实这种数据遍历也简单,使用递归的方法,就可以完美的解决这个问题

代码如下:

 function traverse(obj) {
        for (var a in obj) {

            if (typeof(obj[a]) == "object") {
                traverse(obj[a]); //递归遍历
            } else {
                console.log(a + "=" + obj[a]); //如果是值就显示
            }
        }
 
traverse(data)

 
 
最后我们只要调用这个方法,把obj传入,就成功的遍历了整个data

猜你喜欢

转载自blog.csdn.net/badmoonc/article/details/78124037
今日推荐