在Javascript中计算长度

这个问题在这里已经有了答案:

  • JavaScript对象32的长度应答

  • 你可以这样做:

    Object.getOwnPropertyNames(treeObj).length;  // 3
    

    getOwnPropertyNames返回可检查lengthtreeObj的属性数组。


    要计算对象具有的属性数量,您需要遍历属性,但请记住使用hasOwnProperty函数:

    var count = 0;
    for (var p in obj) {
        if (obj.hasOwnProperty(p)) {
            count++;
        }
    }
    

    如果你忘记这么做,你将循环访问继承的属性。 如果你(或者某个库)已经为Object的原型赋了一个函数,那么所有的对象似乎都具有这个属性,并且看起来似乎是一个比它本质上“更长”的项目。

    考虑使用jQuery的每一个:

    var count = 0;
    $.each(obj, function(k, v) { count++; });
    

    或简单地说,

     for (var p in obj) 
                count++;
    

    更新使用当前浏览器:

    Object.keys(someObj).length
    

    请参阅旧帖子

    链接地址: http://www.djcxy.com/p/27273.html

    上一篇: Calulating length in Javascript

    下一篇: How can I print the length of this JSON Object?