我正在尝试打印数组值的索引。当我这样做时:
let a = [1,2,3,4,5];
var findIdx = function (arr) {
for (let i = 0 ; i < arr.length; i++) {
var indexes = [];
var index = arr[i];
console.log(index);
return indexes.push(index);
}
return indexes;
}
console.log(findIdx(a));
// => 0,1 // return
这不是我想要的,我想获取这些值的索引。此外,我return
正在返回1
。我想要一个由这些索引组成的数组。我想念什么?
当我执行for in
循环时,可以在控制台上获得所需的内容,但是我仍在返回找到该索引的值。
let a = [1,2,3,4,5];
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
console.log(index);
return indexes.push(index);
}
return indexes
}
console.log(findIdxWithForIn(a));
// => 0, 1 // return
TL; DR:这是上面代码的jsfiddle。
请注意,我只想要该数组内的所有索引
您正在打印var index
的不是索引,而是数组中的元素:
var index = arr[i];
console.log(index);
您需要这样获取索引var index = i;
。因为i
在for循环中是实际索引。您还可以arr.indexOf(...);
用来获取特定元素的索引。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句