$.each和ko.utils.arrayForEach的区别

8

我想了解$.each和ko.utils.arrayForEach之间的区别,它们在数组迭代方面有什么不同吗?

我正在使用knockout js,因此我使用ko.utils.arrayForEach,但我只是好奇。


2
你有阅读相关的文档吗? - Felix Kling
公平地说,在 Knockoutjs 文档中,两者之间的区别并不是很清楚。我找到了这篇文章,作者是一个 KO 专家。https://groups.google.com/forum/#!msg/knockoutjs/Ep85EFQLSPs/0FpB2ubftvYJ 看起来它们之间没有太大的区别。 - Jason Evans
这个页面并没有真正阐明区别是什么:http://www.knockmeout.net/2011/04/utility-functions-in-knockoutjs.html - Jason Evans
1个回答

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对象一起使用。此外,它还会在循环时提供索引。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接