获取json对象长度的问题

平时,我们获取一些字符串或数组的长度的时候会使用length,例如:

var str ="asdasd"
console.log(str.length) //输出6

var arr =[1,'sd',3,{"s" : 1}];
console.log(arr.length) //输出4

 

有一次面试的时候,有条题目大概是这样的,

var data = {
            "name" : 'abc',
            "age" : 25
        }

console.log(data.length)  //输出多少?

当时我是答错了,写了2,后来才知道是undefine。。

 

我们可以这样计算json对象的长度

var data = {
            "name" : 1,
            "age" : 2,
            "arr" : {
                'a' : 3,
                'b' : 4
            }
        }

        var j=0;
        for( var i in data){
            if (data.hasOwnProperty(i)) j++
        }
        console.log(j)

 

你可能感兴趣的:(获取json对象长度的问题)