Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Arrays_Indexing - Fatal编程技术网

Javascript 创建一个新的索引数组

Javascript 创建一个新的索引数组,javascript,arrays,indexing,Javascript,Arrays,Indexing,不知道为什么这不起作用 说明: //创建一个名为indexFinder的函数,该函数将在数组上循环并返回内容索引的新数组,例如,[243,123,4,12]将返回[0,1,2,3]。创建一个名为“indexes”的新变量,并将其设置为包含随机数的索引 尝试过的解决方案: let randomNumbers = [1, 3453, 34, 456, 32, 3, 2, 0]; let indexes = []; function indexFinder(arr){ for(var i = 0

不知道为什么这不起作用

说明:

//创建一个名为indexFinder的函数,该函数将在数组上循环并返回内容索引的新数组,例如,[243,123,4,12]将返回[0,1,2,3]。创建一个名为“indexes”的新变量,并将其设置为包含随机数的索引

尝试过的解决方案:

let randomNumbers = [1, 3453, 34, 456, 32, 3, 2, 0];
let indexes = [];

function indexFinder(arr){
  for(var i = 0; arr.length; i++){
    indexes.push(i);
  }

  return indexes;
}

indexFinder(randomNumbers);
console.log(indexes);

for
循环中没有实际条件测试,因为
arr.length
大于0时总是真实的

randomNumbers=[123453,34456,32,3,2,0];
让索引=[];
功能索引器(arr){
对于(变量i=0;iconsole.log(索引)另一种方法是使用Array.from

const randomNumbers=[1,3453,34,456,32,3,2,0];

log(Array.from(randomNumbers,x=>randomNumbers.indexOf(x))
问题在于仅使用
arr.length
for loop
中的条件,因为大于
0
的for length将始终为
true

另一种方法是使用函数

randomNumbers=[123453,34456,32,3,2,0],
索引=数组.from({length:randomNumbers.length},(\ux,i)=>i);
console.log(索引)
Object.keys(arr)
…虽然我猜它们应该是字符串,所以
Object.keys(arr).map(Number)