了解javascript中的循环-在数组中打印值索引
我试图打印数组值的索引。当我这样做时:了解javascript中的循环-在数组中打印值索引,javascript,function,loops,Javascript,Function,Loops,我试图打印数组值的索引。当我这样做时: 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; } co
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
TL;DR:这是一个包含上述代码的示例
请注意,我只想查看该数组中的所有索引,您应该这样做
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
indexes.push(index)
console.log(index);
}
return indexes;
}
现在,如果您想找出索引数组包含的内容,那么再次将其放入for循环并提取,您应该这样做
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
indexes.push(index)
console.log(index);
}
return indexes;
}
现在,如果您想找出索引数组包含的内容,那么再次将其放入for循环并提取索引。push(index)应该在for循环中。你做错了
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
indexes.push(index)
}
return indexes;
}
console.log(findIdxWithForIn(a));
索引。推送(索引)
应该在for循环的内部。你做错了
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
indexes.push(index)
}
return indexes;
}
console.log(findIdxWithForIn(a));
试试这个
let a = [1, 2, 3, 4, 5];
console.log('======= For Loop ========')
/*
For loop
*/
var findIdx = function (arr) {
var indexes = [];
for (let i = 0 ; i < arr.length; i++) {
var index = arr[i];
console.log(index);
indexes.push(index);
}
return indexes
}
console.log(findIdx(a));
console.log('======= For In ========')
/*
For In Loop
*/
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
console.log(index);
indexes.push(index);
}
return indexes //.push(index);
}
console.log(findIdxWithForIn(a));
a=[1,2,3,4,5];
console.log('=======For循环===========')
/*
For循环
*/
var FINDIX=函数(arr){
var指数=[];
for(设i=0;i
试试这个
let a = [1, 2, 3, 4, 5];
console.log('======= For Loop ========')
/*
For loop
*/
var findIdx = function (arr) {
var indexes = [];
for (let i = 0 ; i < arr.length; i++) {
var index = arr[i];
console.log(index);
indexes.push(index);
}
return indexes
}
console.log(findIdx(a));
console.log('======= For In ========')
/*
For In Loop
*/
var findIdxWithForIn = function (arr) {
var indexes = [];
for (i in arr) {
var index = i;
console.log(index);
indexes.push(index);
}
return indexes //.push(index);
}
console.log(findIdxWithForIn(a));
a=[1,2,3,4,5];
console.log('=======For循环===========')
/*
For循环
*/
var FINDIX=函数(arr){
var指数=[];
for(设i=0;i
您正在打印的var index
不是索引,而是数组中的元素:
var index = arr[i];
console.log(index);
您需要获取索引,以便
var index=i代码>。因为for循环中的i
是实际索引。您还可以使用arr.indexOf(…)
获取特定元素的索引。您正在打印的var index
不是索引,而是数组中的元素:
var index = arr[i];
console.log(index);
您需要获取索引,以便var index=i代码>。因为for循环中的i
是实际索引。您还可以使用arr.indexOf(…)
获取特定元素的索引。您需要将索引推到for循环内部,而不是外部。抱歉,这里根本不清楚您要做什么。您的findIdx
函数只接受数组;它应该找到哪个索引?通常情况下,查找数组中某个值的索引的函数需要同时访问数组和要查找的值。您只需在索引数组中推送一个值,正如sharath bangera建议的那样,将你的索引放入for循环中,然后返回索引这个问题的各种答案可能会有一些用处:你不想在没有安全措施的情况下使用for in
,您原来的for
循环是这方面的标准构造。您需要将索引推到for循环内部,而不是外部。对不起,这里根本不清楚您要做什么。您的findIdx
函数只接受数组;它应该找到哪个索引?通常情况下,查找数组中某个值的索引的函数需要同时访问数组和要查找的值。您只需在索引数组中推送一个值,正如sharath bangera所建议的那样,将你的索引放入for循环中,然后返回索引这个问题的各种答案可能会有一些用处:你不想在没有安全措施的情况下使用for in
,你原来的for
循环是这个问题的标准结构。感谢你澄清这一点。现在bth函数正在打印我想要的索引,但是它们只打印0,1
,而不是0,1,2,3,4
。我编辑了代码谢谢你澄清这一点。现在bth函数正在打印我想要的索引,但是它们只打印0,1
,而不是0,1,2,3,4
。我编辑了代码