美元.每个索引初始值

$.each index initial value

本文关键字:索引 美元      更新时间:2023-09-26

我们知道$的索引。每一个都从零开始。我想打印从1到10的索引,因为我有一个10数组。

$.each(myArr, function(i){
console.log(i++);
}

为什么我还是从0开始?

试试这个

$.each(myArr, function(i){
console.log(++i);
})

这是前缀操作符和后缀操作符的区别。前缀操作符在当前操作完成后增加值。后缀操作符先增加值,然后执行当前语句。上面的代码只是用来解释的。

正如@Ghazgkull建议的那样,最好使用i+1来传达代码的缩进

变量后的++操作符在当前调用结束后(在您的示例中,在控制台日志调用之后)增加该变量,这就是为什么您看到它从0开始。

因为它是一个索引,所以不需要手动增加它的值,但是一个简单的console.log(i+1);就可以了。

否则,您可以在当前调用之前增加它,通过将++放在变量前面,如@Satya在评论中所说。


看这里:

var myArr = [1,1,1,1,1,1,1,1,1,1];
$.each(myArr, function(i){
  console.log(i+1);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

当在变量(i++)的右侧应用++运算符时,使用递增前的当前值。如果您想获得递增后的值,则应使用++i

$.each()为您增加值。你不需要自己增加它。你的代码应该是:

$.each(myArr, function(i) {
    console.log(i + 1);
}

即使++i在这种情况下工作,您也不应该在这里使用增量。对于任何有经验的程序员来说,这看起来就像你试图以一种没有意义的方式增加一个值。使用i + 1可以清楚地表明您只是在计算一个值。