将嵌套数组替换为新数组
Replace nested array for new array
我在另一个数组中有一个数组:
结构:
First Array
[
{
Second Array
[
{
}
]
}
]
所以我想用我拥有的新数组替换所有第二个数组,所以我试试这个:
this.FirstArray.map(
(myArray) =>
myArray.SecondArray === this.MyNewArray
)
但这并没有取代我的新数组,它仍然具有旧值。
我做错了什么?
通常,map()
方法会 return 一个新数组。
// Assume that your nested array looks like so:
let nestedArray = [
["A", "B", "C"],
["E", "F", "G"]
]
// Assume that this is the new array
const newArray = [1, 2, 3]
nestedArray = nestedArray.map(el => newArray);
// expected output: nestedArray [[1, 2, 3], [1, 2, 3]]
您可以通过使用扩展运算符而不使用任何循环来实现这一点,因为您希望用新数组替换第二个数组。
输入数组:
First Array
[{
Second Array
[{}]
}]
用secondArray
替换newArray
的逻辑 :
FirstArray[0].secondArray = [ ...newArray ]
演示 :
const firstArray = [{
secondArray: ['alpha', 'beta', 'gamma']
}];
const newArray = ['A', 'B'];
firstArray[0].secondArray = [ ...newArray ];
console.log(firstArray);
我在另一个数组中有一个数组:
结构:
First Array
[
{
Second Array
[
{
}
]
}
]
所以我想用我拥有的新数组替换所有第二个数组,所以我试试这个:
this.FirstArray.map(
(myArray) =>
myArray.SecondArray === this.MyNewArray
)
但这并没有取代我的新数组,它仍然具有旧值。 我做错了什么?
通常,map()
方法会 return 一个新数组。
// Assume that your nested array looks like so:
let nestedArray = [
["A", "B", "C"],
["E", "F", "G"]
]
// Assume that this is the new array
const newArray = [1, 2, 3]
nestedArray = nestedArray.map(el => newArray);
// expected output: nestedArray [[1, 2, 3], [1, 2, 3]]
您可以通过使用扩展运算符而不使用任何循环来实现这一点,因为您希望用新数组替换第二个数组。
输入数组:
First Array
[{
Second Array
[{}]
}]
用secondArray
替换newArray
的逻辑 :
FirstArray[0].secondArray = [ ...newArray ]
演示 :
const firstArray = [{
secondArray: ['alpha', 'beta', 'gamma']
}];
const newArray = ['A', 'B'];
firstArray[0].secondArray = [ ...newArray ];
console.log(firstArray);