ใช้ slice() หรือ JSON.parse(JSON.stringify()) สำเนาอาเรย์ Deep Copy
ตัวอย่างโค้ด
function createNewArray(listOfNames) {
return JSON.parse(JSON.stringify(listOfNames));
}
var listOfNames = ["John", "Mike", "Sam", "Carol"];
var namesArray = listOfNames.slice(); // Shallow Copy พอสำหรับ Primitive
console.log("The new Array=");
console.log(namesArray);
วิธีรันโปรแกรม
ใช้คำสั่ง node fileName.js (เช่น node demo111.js)
ผลลัพธ์
The new Array= [ 'John', 'Mike', 'Sam', 'Carol' ]
หมายเหตุ: slice() พอสำหรับอาเรย์ค่า Primitive ถ้ามี Object ต้องใช้ JSON.parse(JSON.stringify()) หรือ structuredClone() (Modern)