역자 주: 이 글은 ECMAScript 6의 지식 포인트에 대해 이야기할 것입니다. ES5도 이해하지 못한다면 해야 합니다. CSS4, HTML6, 심지어 ES7 ES8까지 모두 계획을 시작했으니 서두르세요. 그렇지 않으면 탈락합니다!
때로는 배열을 여러 요소로 확장한 다음 이러한 요소를 함수 호출의 매개변수로 사용해야 합니다. JavaScript에서 Function.prototype.apply를 사용하여 이 확장 작업을 구현할 수 있습니다. 생성자를 실행할 때 적용할 수 없습니다. 이 글에서는 전개 연산이 무엇인지, new 연산자를 사용하면서 전개 연산을 수행하는 방법을 설명합니다.
1.
Unpacking은 함수 호출이나 메서드 호출에서 또는 생성자를 실행할 때 필요한 매개변수를 제공하는 것을 의미합니다. Python에서는 이 작업을
이라고 합니다. ECMAScript.next에는 이미 (확장 연산자) 확산 연산자 (접두사 ...로 표시)를 사용하여 이 확장 작업을 수행할 수 있습니다. 현재 JavaScript에서는 Function.prototype을 통해 동일한 효과를 얻을 수 있습니다. .적용 방법. 역자 주: 배열을 확장하기 위해 실제 매개변수 위치에 사용되는 것 외에도 확장 연산자를 형식 매개변수 위치에 사용하여 나머지 매개변수를 나타낼 수도 있습니다. 나머지 매개변수
2. 함수 매개변수 확장
Math.max() 메서드는 0부터 여러 숫자 유형 매개변수를 사용하여 최대값을 반환합니다. 확장 연산 기호를 사용하면 배열을 매개변수로 직접 사용할 수 있습니다:
Math.max(...[13, 7, 30])
이것은 다음 쓰기와 동일합니다
2단계.바인드에 배열을 전달하려고 합니다. 따라서 apply를 다시 사용하여 배열을 확장된 매개변수로 변환하고 바인드 함수에 전달합니다.
그들의 제안을 바탕으로 다음 코드를 약간 수정했습니다.