配列のコピー複製

const arr01 = ["one", "two", "three"];
let arr02;
let arr03;
let arr04;
let arr05;

// 参照渡しコピー
arr02 = arr01;

// concatを使った配列コピー 
arr03 = arr01.concat();

// スプレッド構文を使った配列コピー
arr04 = [...arr01];

// sliceを使った配列コピー 
arr05 = arr01.slice();
arr01.push("add");

console.log(arr01);  // ["one", "two", "three", "add"]
console.log(arr02);  // ["one", "two", "three", "add"]
console.log(arr03);  // ["one", "two", "three"]
console.log(arr04);  // ["one", "two", "three"]
console.log(arr05);  // ["one", "two", "three"]

配列の要素がオブジェクトの場合、concatおよびスプレッド構文を使った配列コピーであっても、オブジェクトは参照コピーになるので注意が必要

新しい配列として返り値で返されるメソッド:concat join slice map filter

配列の連結 concat スプレッド構文