Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
了解javascript中的循环-在数组中打印值索引_Javascript_Function_Loops - Fatal编程技术网

了解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
。我编辑了代码