我如何通过一个序列中的所有输入,使用JavaScript?


当前回答

没有内置的能力打破 forEach. 要停止执行,请使用 Array#some 如下:

[1,2,3].some(function(number) {
    return number === 1;
});

這是因為有些回來是真實的,一旦任何的呼叫回來,執行在順序,回來是真實的,短循環的執行的其他。

其他回答

Lambda Syntax 通常不适用于 Internet Explorer 10 或更低版本。

我通常使用

[].forEach.call(arrayName,function(value,index){
    console.log("value of the looped element" + value);
    console.log("index of the looped element" + index);
});

如果您是一个 jQuery 粉丝,并且已经有一个 jQuery 文件运行,您应该逆转指数和值参数的位置。

$("#ul>li").each(function(**index, value**){
    console.log("value of the looped element" + value);
    console.log("index of the looped element" + index);
});

如果您正在使用 jQuery 图书馆,您可以使用 jQuery.each:

$.each(yourArray, function(index, value) {
  // do your stuff here
});

编辑:

作为一个问题,用户想要代码在JavaScript而不是jquery,所以编辑是

var length = yourArray.length;   
for (var i = 0; i < length; i++) {
  // Do something with yourArray[i].
}

使用 ECMAScript 6 破坏和扩散操作器的插槽

以下示例将使用陈述和.forEach 方法. 示例 6, 7 和 8 可以使用任何功能漏洞,如.map,.filter,.reduce,.sort,.every,.some. 有关这些方法的更多信息,请参阅 Array Object。

例子3:用密钥和价值跳动

示例4:获取对象属性在线

以此为主,以此为主,以此为主,以此为主。

示例7: 示例4 是否使用.forEach

示例8: 示例5 是否使用.forEach

我来自Python,我发现这种方式更清晰。

theArray 是 array,例子是 array 的元素:

for (let instance of theArray)
{
    console.log("The instance", instance);
}

for (instance in theArray)
{
    console.log("The instance", instance);
}

与比较:

theArray.forEach(function(instance) {
    console.log(instance);
});

但是,在一天结束时,两人都在做同样的事情。

for (var i = array.length; i--; ) {
     // process array[i]
}


一般来说,对于更高的级别代码,其中清晰度和安全性是更大的担忧,我以前建议使用 Array::forEach 作为您的默认模式的旋转(尽管这些日子我更喜欢使用 for..of)。


for (var i = 0; i < array.length; i++) { ... }   // Forwards

for (var i = array.length; i--; )    { ... }   // Reverse

你会注意到,i--是中间条款(通常我们看到比较),最后条款是空的(通常我们看到i++)。这意味着i--也被用作继续的条件。

如何可以从 array.length 开始而不爆炸? 因为 i-- 运行在每个 iteration 之前,在第一个 iteration 我们将实际上访问项目在 array.length - 1 避免任何问题与 Array-out-of-bounds 未定义的项目. 为什么它不会停止 iterating 之前指数 0? 旋转将停止 iterating 当条件 i-- 评估到虚假值(当它产生 0)。


for (var i = array.length; i --> 0 ;) {

信用去了WYL,向我展示了对旋转的好处和恐惧。