【问题标题】:JS How to save the result of a for loop as an array?JS如何将for循环的结果保存为数组?
【发布时间】:2022-01-20 15:33:25
【问题描述】:
const cars = ['BMW', 'Volvo', 'Saab', 'Ford', 'Fiat', 'Audi'];
const arr = [];

for (let i = 0; i < cars.length; i++) {
  const i = 'hi';
  console.log(i);
}

这段代码的结果是:

hi
hi
hi
hi
hi
hi

如何将此结果作为数组保存到变量中? 返回值应为:['hi','hi','hi','hi','hi','hi']

【问题讨论】:

  • arr.push(i) 添加到循环中。
  • 你为什么要在循环内声明i,与循环计数器同名?如果您需要循环内的循环计数器的值怎么办?
  • (new Array(cars.length)).fill('hi')

标签: javascript arrays for-loop


【解决方案1】:
const cars = ['BMW', 'Volvo', 'Saab', 'Ford', 'Fiat', 'Audi'];
const arr = [];
const x = 'hi';

for (let i = 0; i < cars.length; i++) {
  arr.push(x);
}

【讨论】:

    【解决方案2】:

    你可以使用的最好的东西是map operator

    const cars = ['BMW', 'Volvo', 'Saab', 'Ford', 'Fiat', 'Audi'];
    const arr = cars.map(car => 'hi');
    

    【讨论】:

    • 还有[...cars].fill('hi')
    【解决方案3】:

    另一个使用Array.from()的选项

    const cars = ['BMW', 'Volvo', 'Saab', 'Ford', 'Fiat', 'Audi'];
    const arr = Array.from(cars, _ => "hi");
    

    const cars = ['BMW', 'Volvo', 'Saab', 'Ford', 'Fiat', 'Audi'];
    const arr = Array.from(cars, _ => "hi");
    console.log(arr);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-03
      • 2014-12-07
      • 1970-01-01
      相关资源
      最近更新 更多