我试图了解$ .each和ko.utils.arrayForEach之间的区别,还有更多的数组迭代吗?
我正在使用ko.utils.arrayForEach,因为我正在使用淘汰赛js,但我只是有好奇心。
答案 0 :(得分:15)
ko.utils.arrayForEach
不依赖于jQuery,只是编写类似的东西的快捷方式:
for (var i = 0, j = myArray.length; i < j; i++) {
someMethod(myArray[i]);
}
它仅适用于数组。 jQuery不是Knockout的严格依赖。如果它可用,那么Knockout将使用它的几个地方(字符串到DOM解析和事件处理)。
$.each
需要jQuery(显然)并且旨在更灵活。它可以迭代对象和数组中的属性,并使用jQuery对象。它还会在循环时为您提供索引。