对于我的生活,我无法弄清楚如何复制数字数组。
预期结果:[1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
到目前为止,这是我的代码:
const numbers = [1, 2, 3, 4, 5];
var result = numbers.map((number) => {
return number
});
console.log(result);
我无法弄清楚如何获取数字数组然后复制数组?
我开始做if语句 - “如果number等于1然后返回1”但是会打印出这样的数字[1, 1, 2, 2, 3, 3, 4, 4, 5, 5]
答案 0 :(得分:3)
地图将一对一地映射所有值,这就是为什么它被称为“地图”;它给你一个值,你返回一个应该替换它的值。
要复制列表,concat
列表为自己:
const numbers = [1, 2, 3, 4, 5];
var result = numbers.concat(numbers);
console.log(result);
答案 1 :(得分:0)
在这种情况下,只有使用concat
才能使用Mapnumbers.concat(numbers);
如果你想连续多次,那么
var concatArr = numbers;
for (var i=0; i < 9 ; i++ ) {
numbers = numbers.concat(concatArr);
}
console.log(numbers);
Concat docs https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/concat
答案 2 :(得分:0)
最快的方法是使用slice()然后将concat()用于旧数组。
var arr = [ 1, 2, 3, 4, 5 ];
var clone = arr.slice(0);
var duplicate = arr.concat(clone);