const areaData=['北京市','山西市','上海市']; const jwArr=[[121.478358, 31.23231],[116.413695, 39.922329],[113.164895, 40.270717]] 合并这两个数组生成 key-value 数组的操作
时间: 2023-10-06 16:06:41 浏览: 45
可以使用`Array.prototype.map()`方法结合ES6中的对象字面量语法来实现合并操作,代码如下:
```javascript
const areaData = ['北京市', '山西市', '上海市'];
const jwArr = [[121.478358, 31.23231], [116.413695, 39.922329], [113.164895, 40.270717]];
const result = areaData.map((area, index) => ({ key: area, value: jwArr[index] }));
console.log(result);
```
输出结果为:
```javascript
[
{ key: '北京市', value: [ 121.478358, 31.23231 ] },
{ key: '山西市', value: [ 116.413695, 39.922329 ] },
{ key: '上海市', value: [ 113.164895, 40.270717 ] }
]
```
解释一下代码,`Array.prototype.map()`方法会遍历`areaData`数组中的每个元素,同时传入该元素的值和索引,返回一个新数组。在这里,我们可以使用箭头函数的语法,将当前元素的值和索引作为参数传入。在箭头函数中,我们使用对象字面量语法创建一个对象,该对象有两个属性:`key`和`value`,其中`key`的值为当前元素的值,`value`的值为`jwArr`数组中与当前元素对应的值。最后,`Array.prototype.map()`方法返回一个新数组,该数组的每个元素都是一个对象,表示`areaData`和`jwArr`数组中对应位置的键值对。