如果我有一个JavaScript对象,请说
const myObject = new Object();
myObject["firstname"] = "Gareth";
myObject["lastname"] = "Simpson";
myObject["age"] = 21;
Run Code Online (Sandbox Code Playgroud)
是否有内置或接受的最佳实践方法来获取此对象的长度?
可能重复:
Javascript对象的长度(即关联数组)
我有一个类似于这个的对象:
var jsonArray = {
'-1': {
'-1': 'b',
'2': 'a',
'10': 'c'
},
'2': {
'-1': 'a',
'2': 'b',
'10': 'a'
},
'5': {
'-1': 'a',
'2': 'a',
'10': 'b'
}
};
Run Code Online (Sandbox Code Playgroud)
我试图得到它的长度,问题是jsonArray.length返回5而不是3(这是它拥有的总项目).该阵列相对较长(有1000x2000项),这必须每秒进行很多次.如何更有效地获得物品数量?
这是一个样本.我的担心似乎都在做.哪个更喜欢?
var fooArr = [{ "bar": {"blah": 9 } }];
for(var i in fooArr) {
var value = fooArr[i].bar.blah;
console.log(value); //checking in firebug console
}
var fooObj = { "bar": {"blah": 9 } };
for(var i in fooObj) {
var value = fooObj[i].blah;
console.log(value); //checking in firebug console
}
Run Code Online (Sandbox Code Playgroud)
此外,以下似乎无效,任何避免数组表示法的方法.
var fooObj1 = {
{ "bar": { "blah": 9 } },
{ "bar": { "blah": 4 } },
{ "bar": { "blah":12} }
};
Run Code Online (Sandbox Code Playgroud)
所以我不得不将上面的代码修改为类似下面的代码.使用Object文字过于粘稠是不是太糟糕了
var fooObj1 = {
1:{ …Run Code Online (Sandbox Code Playgroud)