的ECMAScript 5的array.forEach(callback[, thisArg])
是迭代阵列上非常方便,拥有了对语法的许多优势:为什么ECMAScript 5中的对象没有forEach方法?
- 它更简洁。
- 它不会创建我们只需要用于迭代的变量。
- 它为循环的局部变量创建可见性范围。
- 它提高了性能。
是有一个原因是没有object.forEach
更换for(var key in object)
?
当然,我们可以使用JavaScript实现,如_.each或$ .each,但这些都是性能杀手。
这个问题更适合参与ES5/ES6讨论的人员。 – alex 2013-02-18 05:11:21
为什么'for-in'需要更换?为什么'Object.forEach'不会成为一个性能杀手?命中主要来自调用回调函数。 – 2013-02-18 05:23:48