【问题标题】:Length of an object filled with objects?充满物体的物体的长度?
【发布时间】:2011-07-29 13:28:00
【问题描述】:

我有一个装满对象的对象,我想知道其中有多少项目。我怎样才能用 JS 做到这一点?还在页面中运行 jQuery。

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    试试这个:

    function countProperties(obj) {
        var count = 0;
    
        for (var prop in obj) {
            if (obj.hasOwnProperty(prop))
                ++count;
        }
    
        return count;
    }
    

    另请参阅:Number of elements in a javascript object

    【讨论】:

    • 不客气,很高兴为您提供帮助。顺便说一句,如果您接受我的回答,我们将不胜感激。谢谢。
    • 刚刚做了,抱歉你太快了,我不得不等了 5 分钟 :)
    【解决方案2】:

    对于 ECMAScript 5 兼容的代理,例如 Chrome,试试这个:

    var obj = {a:1, b:2, c:3};
    console.log('Your object has ' + Object.keys(obj).length + ' elements in it');
    
    // Your object has 3 elements in it
    

    另见here

    干杯

    【讨论】:

      【解决方案3】:

      “用对象填充的对象”通常称为数组。无论如何:

      yourObject.length
      

      【讨论】:

      • 数组也是对象。 b = new Array(); typeof b 显示 "object"
      • 在下面查看我的答案; “array”是指“Array()”对象developer.mozilla.org/en/JavaScript/Reference/Global_Objects/… 而且,长度只是 Array 对象的属性,而不是 Object 对象
      • 我完全不同意。是的,数组是一个对象。不,对象不是数组。 var x = {a:1}; console.log(x.length); // undefined
      猜你喜欢
      • 2012-08-18
      • 2012-08-15
      • 1970-01-01
      • 2020-07-18
      • 2019-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多