可以像这样迭代对象的属性:
for (property in object)
{
// do stuff
}
在Javascript中迭代数组的最快方法是使用减时循环:
var i = myArray.length;
while (i--)
{
// do stuff fast
}
发布于 2018-02-12 09:45:04
可以尝试:
//slower
for (property in object) { /* do stuff */ }
//faster
for (var property in object) { /* do stuff */ }
发布于 2018-02-12 10:05:36
工作在慢模式:
for each key in myObject: // key is a string!
var value = myObject._hiddenDictionary.lookup(key); // this is the overhead
doSomethingWith(key, value);
在具有三个属性的对象上循环,如下所示:
var value = object._hiddenDictionary.lookup('a');
doSomethingWith('a', value);
var value = object._hiddenDictionary.lookup('b');
doSomethingWith('b', value);
var value = object._hiddenDictionary.lookup('c');
doSomethingWith('c', value);
doSomethingWith('a', object.a)
doSomethingWith('b', object.b)
doSomethingWith('c', object.c)
性能测试
这个jsperf显示预编译迭代器方法比标准要快得多
https://stackoverflow.com/questions/-100003173
复制相似问题