직렬화, 문자열로 변경 후 다시 배열로 변경
string, number, boolean 값을 가진 배열만 사용 가능
중첩이 일정하지 않더라도 적용 가능
const originalArray = [[1, 2], [3, 4]];
// JSON 직렬화와 역직렬화를 통한 복제
const clonedArray = JSON.parse(JSON.stringify(originalArray));
console.log(clonedArray); // [[1, 2], [3, 4]]
const originalArray = [[1, 2], [3, 4]];
// 중첩 배열 복제
const clonedArray = originalArray.map(innerArray => innerArray.slice());
console.log(clonedArray); // [[1, 2], [3, 4]]
function cloneNestedArray(array) {
if (!Array.isArray(array)) {
return array; // 중첩 배열이 아닌 경우 복제하지 않고 반환
}
return array.map(item => cloneNestedArray(item));
}
const originalArray = [[1, 2], [3, [4, 5]]];
const clonedArray = cloneNestedArray(originalArray);
console.log(clonedArray); // [[1, 2], [3, [4, 5]]]
정말 유익한 글이었습니다.