我正在尝试减少js中的for / in循环。
我发现了很多关于减少for循环的指令,但是没有运气找到减少for / in循环的语句。
var classRegister = ["Lawrence", "John", "Jeff", "Bobbi"];
for( var index in classRegister ) {
console.log(classRegister[index]);
}
这是我要修改为递减的for / in循环语句。
答案 0 :(得分:3)
使用基本的for
循环并避免for..in
迭代数组
var classRegister = ["Lawrence", "John", "Jeff", "Bobbi"];
for (let i = classRegister.length - 1; i >= 0; i--) {
console.log(classRegister[i]);
}
答案 1 :(得分:2)
如果您想使用它,只需从最后一个索引值中减去索引即可。
.scalar()
答案 2 :(得分:1)
您不应将for..in用于数组,而应使用简单循环
var classRegister = ["Lawrence", "John", "Jeff", "Bobbi"];
for(let index = classRegister.length-1; index >= 0; index-- ) {
console.log(classRegister[index]);
}
或一会儿循环
var classRegister = ["Lawrence", "John", "Jeff", "Bobbi"];
let index = classRegister.length-1;
while(index >= 0) {
console.log(classRegister[index]);
index--;
}
有一些骇人听闻的方法可以做,但是您绝不能使用IMO
var classRegister = ["Lawrence", "John", "Jeff", "Bobbi"];
let copy = [...classRegister].reverse() // this reverse array in place
for( var index in copy ) {
console.log(copy[index]);
}