스프레드 구문

5280 단어 javascript
스프레드 연산자는 내가 자주 간과하는 JavaScript의 기능 중 하나입니다. 이번 주에는 스프레드 구문에 대해 자세히 살펴보고 이점에 대한 간략한 요약을 작성하고자 합니다.

첫째, 아마도 스프레드 연산자의 가장 일반적인 용도인 얕은 복제입니다. 물론, 우리는 slice 메서드에서 배열의 얕은 복사본을 얻을 수 있지만 스프레드 구문은 나에게 조금 더 깨끗해 보입니다.

let arr1 = [1, 2, 3];

// slice
let arr2 = arr1.slice();

// spread
let arr3 = [ ...arr1 ];

// arr2 value: [1, 2, 3]
// arr3 value: [1, 2, 3]

확산 연산자를 사용하여 객체의 얕은 복사본을 얻을 수도 있습니다.

let obj1 = { v1: 0, v2: 1 };

let obj2 = { ...obj1 };

// obj2 value: { v1: 0, v2: 1 }

확산 연산자의 또 다른 훌륭한 사용은 배열 연결입니다.

let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];

// concat
let arr3 = arr1.concat(arr2);

// spread
let arr4 = [ ...arr1, ...arr2 ];

// arr3 value: [1, 2, 3, 4, 5, 6]
// arr4 value: [1, 2, 3, 4, 5, 6]

이 방법으로도 개체를 병합할 수 있습니다.

let obj1 = { v1: 0, v2: 1, v3: 2 };
let obj2 = { v2: 10, v3: 20 };

let obj3 = { ...obj1, ...obj2 };

// obj3 value: { v1: 0, v2: 10, v3: 20 }

스프레드 연산자를 사용하여 함수나 메서드에 여러 인수를 전달할 수도 있습니다.

const add = (a, b) => {
    return a + b;
}

let args = [10, 11];

let result = add( ...args );

// result value: 21

스프레드 구문이 코드의 청결도를 향상시키는 데 도움이 될 수 있다고 생각합니다. 다른 깔끔한 트릭이나 팁을 알고 있다면 아래에 의견을 남겨주세요.

좋은 웹페이지 즐겨찾기