我正在尝试制作这2个不同的数组
array1 = ["ramu", "raju", "ravi"] ;
array2 = [10, 20, 30];
希望使用单个数组名
arrayNeed =[{name:"ramu",amt:10},{name:"raju",amt:20},{name:"ravi",amt:30}];
答案 0 :(得分:2)
您要压缩array1和array2。您应该为此使用地图:
map()方法创建一个新数组,其结果是在调用数组中的每个元素上调用提供的函数。
array1 = ["ramu", "raju", "ravi"] ;
array2 = [10, 20, 30];
arrayNeed = array1.map((x, i) => ({name: x, amt: array2[i]}))
有关:
答案 1 :(得分:1)
您只需在第一个数组上运行forEach
。这将接受带有两个参数的回调函数:item(一次一个),该项目在数组中的索引。
由于您将拥有index
,因此只需在amt
上添加一个名为array2
的值的index
尝试一下
array1 = ["ramu", "raju", "ravi"] ;
array2 = [10, 20, 30];
arrayNeed = [];
array1.forEach((item, index) => {
arrayNeed.push({ name: item, amt: array2[index] });
})
简写语法也可以是:
arrayNeed = array1.map((item, index) => ({ name: item, amt: array2[index] }))
或
arrayNeed = array2.map((item, index) => ({ amt: item, name: array1[index] }))