首页 > 解决方案 > 在javascript中替换for循环

问题描述

我正在尝试在组件数组中添加 id。id 将根据编号递增。的组件。

  component_names = ['test1', 'test2'];

我想创建一个新的数组组件,它将变为:

components = [{id:1, name: 'test1'}, {id:2, name: 'test2'}]

// ids 将随着编号递增。的组件增加。

我正在尝试什么:

let arr=[];
for(let i=0;i<component_names.length;i++){
    arr.push({id:i+1, name: component_names[i]});
}

上述解决方案有效,但我可以对 javascript 中的任何高阶函数做同样的事情吗?

标签: javascript

解决方案


一个简单的映射将起作用,其中参数 1 是项目,参数 2 是索引。

let component_names = ['test1', 'test2']

let result = component_names.map((itm, idx) => ({id:++idx,name:itm}))

console.log(result)


推荐阅读