Array.from 方法 return 具有未定义值而不是实数的数组
Array.from method return an array with undefined values instead of real numbers
我写了下面的代码:
let abcd= Array.from({length:7},(curr,i)=> { console.log(curr,i); i+1;})
console.log(abcd); // returns [undefined *7]
我不明白为什么abcd没有初始化为1到7?
您需要 return 这个值,您只是在递增它而不是 return 它,因此添加了 undefined
。
const result = Array.from({ length: 7 }, (curr, i) => i + 1 );
console.log(result)
传递给 array.from 的函数的值 return 被添加到数组中。在这里你没有 returning 任何东西所以它自动 return undefined
你得到包含 7 undefined
的数组
let abcd= Array.from({length:7},(curr,i)=> {
console.log(curr,i);
return i+1;
})
console.log(abcd); // returns [undefined *7]
我创建这样的数组以使用扩展运算符和 map()
的更好方法
let abcd = [...Array(7)].map((x, i) => i + 1)
console.log(abcd); // returns [undefined *7]
我写了下面的代码:
let abcd= Array.from({length:7},(curr,i)=> { console.log(curr,i); i+1;})
console.log(abcd); // returns [undefined *7]
我不明白为什么abcd没有初始化为1到7?
您需要 return 这个值,您只是在递增它而不是 return 它,因此添加了 undefined
。
const result = Array.from({ length: 7 }, (curr, i) => i + 1 );
console.log(result)
传递给 array.from 的函数的值 return 被添加到数组中。在这里你没有 returning 任何东西所以它自动 return undefined
你得到包含 7 undefined
let abcd= Array.from({length:7},(curr,i)=> {
console.log(curr,i);
return i+1;
})
console.log(abcd); // returns [undefined *7]
我创建这样的数组以使用扩展运算符和 map()
let abcd = [...Array(7)].map((x, i) => i + 1)
console.log(abcd); // returns [undefined *7]