Before you learn ● Array ● Object ● Spread Syntax ● 원시자료형 & 참조자료형 얕은 복사 & 깊은 복사 배열 복사 // 배열 복사 방법 1 (slice()) let arr = [1, 2, 3, 4]; let copiedArr = arr.slice(); // slice는 원본배열을 변경하지 않습니다. (immutable) console.log(arr); // [1, 2, 3, 4] console.log(copiedArr); // [1, 2, 3, 4] console.log(arr === copiedArr); // false copiedArr.pop(); console.log(arr); // [1, 2, 3, 4] console.log(copiedArr); // [1,..
Spread / Rest Syntax // 구조분해 할당 (비구조화 할당) // example const [ a, b, ...rest ] = [1, 2, 3, 4, 5]; console.log(a); // 1 console.log(b); // 2 console.log(...rest); // 3 4 5 // for of문에서 구조분해 할당(비구조화 할당) 사용 // example const user = [ {name : 'kimcoding', age : 20, country : 'korea'}, {name : 'parkcoding', age : 24, country : 'america'}, {name : 'choicoding', age : 23, country : 'japan'} ]; // for of문 ..
Spread / Rest Syntax // 전개 연산자 // 주로 배열을 풀어서 인자로 전달하거나, 배열을 풀어서 각각의 요소로 넣을 때 사용합니다. // spread syntax는 원본배열을 변경하지 않습니다. (immutable) // 전개 연산자를 이용한 복사에는 1차원에서만 유효합니다. // 배열을 풀어서 인자로 전달 function sum(x, y, z) { return x + y + z; } const numbers = [1, 2, 3]; sum(...numbers); // 6 // 배열 합치기 const arr1 = [1, 2, 3]; const arr2 = [4, 5]; let arr3 = [...arr1, ...arr2]; console.log(arr1) // [1, 2, 3] conso..