考虑一个数组:
var array = ['one', 'two', 'three'];
我需要迭代它并获得此类警报:
0值为1
1值为2
2值为3
for ( i=0; i<array.length; i++) {
alert( 'The ' + ? + 'value is ' + array[i] );
}
我该怎么做?感谢。
答案 0 :(得分:6)
只需使用i
,它就是位置。
for ( i=0; i<array.length; i++) {
alert( 'The ' + i + 'value is ' + array[i] );
}
答案 1 :(得分:2)
如果您想提醒该位置并且是相关值,则需要使用i
来表示该位置,并使用array[i]
来表示价值:
//Will output "The 0 value is one", "The 1 value is two", ...
for (var i=0; i<array.length; i++){
alert( 'The ' + i + 'value is ' + array[i] );
}
答案 2 :(得分:2)
var i, max;
for ( i=0, max = array.length; i < max; i += 1) {
alert( 'The ' + i + 'value is ' + array[i] );
}
在开头声明 vars 。这有助于防止吊装。
为了提高效率,请保存数组长度,这样您就不必每次都查询数组对象。
使用i + = 1而不是i ++。
答案 3 :(得分:1)
请使用变量只读取一次数组的长度。
另外要小心,如果您不在JavaScript中的变量前面使用var
语句,解析器将在链中查找具有相同名称的变量。如果您使用的是局部变量,请始终使用var
语句声明它。
for ( var i = 0, len = array.length; i < len; i++) {
alert( 'The ' + i + ' value is ' + array[i] );
}