我有:
const parsedData = [
{ id: 1, key: 'asdas'},
{ id: 2, key: 'asdas'},
]
parsedData.map((item, i) => ({
...item,
key: `modified ${item.key}`
}));
console.log(parsedData);
我想让parsedData
数组修改并得到:
[
{ id: 1, key: 'modified asdas'},
{ id: 2, key: 'modified asdas'},
]
但是我在console。log
中得到了相同的数组地图将返回一个新的数组需要捕捉它在不同变量
const parsedData = [
{ id: 1, key: 'asdas'},
{ id: 2, key: 'asdas'},
]
const newData = parsedData.map((item, i) => ({
...item,
key: `modified ${item.key}`
}));
console.log(newData);
map
返回修改后的数组;它不会改变原文件
你应该记录map
返回的结果:
const parsedData = [
{ id: 1, key: 'asdas'},
{ id: 2, key: 'asdas'},
]
let res = parsedData.map((item, i) => ({
...item,
key: `modified ${item.key}`
}));
console.log(res);
或者,可以使用forEach
:
const parsedData = [
{ id: 1, key: 'asdas'},
{ id: 2, key: 'asdas'},
]
parsedData.forEach((item, i) => (parsedData[i] = {
...item,
key: `modified ${item.key}`
}));
console.log(parsedData);