我在this page上看到了这段代码:(它是$ .each()的解释器)
//ARRAYS
var arr = [ "one", "two", "three", "four", "five" ];
jQuery.each(arr, function(index, value) {
console.log(this);
return (this != "three"); // will stop running after "three"
});
//outputs: one two three
我不确定回复此行(this != "three"); // will stop running after "three"
为什么它会在"three"
之后停止运行?第一次运行后不应该停止,因为"one"
不等于"three"
?
答案 0 :(得分:2)
return (this != "three");
所以,如果this
(数组的当前元素)等于three
,它将返回false并且循环中断并且不会继续进行,否则它将继续迭代,因为它将返回真。
return true; // means continue and
return false; // means break.
答案 1 :(得分:1)
当this
除"three"
之外的任何内容时,表达式的计算结果为true
,因此继续迭代。
所以,例如。
this = "one";
(this != "three") = true;
答案 2 :(得分:1)
由于jQuery.each的返回规则。
jQuery.each(arr, function(index, value) {
return true; // It means continue;
return false; // It means break;
});