将二维阵列中的元素复制到另一个阵列中



我一直在尝试将元素从多维数组复制到另一个数组中。我的目标是从第一个数组"bikeBrands"中获取元素,并尝试将它们放在新数组"bickBrands2"中,但"bike布兰ds2"一直是未定义的。

const bikeBrands = [];
bikeBrands[0] = ['Susuki', 'Kawasaki'];
bikeBrands[1] = ['Honda', 'KTM'];
const bikeBrands2 = [];
for (var i = 0; i < bikeBrands.lenght; i++)
bikeBrands2[i] = bikeBrands[i].slice();

console.log(bikeBrands2);

您在length关键字中输入了一个拼写错误。这就是问题所在。

for (var i = 0; i < bikeBrands.length; i++)
bikeBrands2[i] = bikeBrands[i].slice();
console.log(bikeBrands2);

输出:

[ [ 'Susuki', 'Kawasaki' ], [ 'Honda', 'KTM' ] ]

您可以使用concat函数,并在不使用布尔的情况下使用seconde生成第一个数组

let bikeBrands = [];
bikeBrands[0] = ['Susuki', 'Kawasaki'];
bikeBrands[1] = ['Honda', 'KTM'];
let bikeBrands2 = [];

bikeBrands2 = bikeBrands2.concat(bikeBrands);
console.log(bikeBrands2);

最佳实践是使用排列运算符。干杯

const bikeBrands = [];
bikeBrands[0] = ['Susuki', 'Kawasaki'];
bikeBrands[1] = ['Honda', 'KTM'];

const copybikeBrands = [...bikeBrands];
console.log("the copy", copybikeBrands)

最新更新