>  기사  >  웹 프론트엔드  >  스프레드 구문과 나머지 매개변수: 차이점은 무엇입니까?

스프레드 구문과 나머지 매개변수: 차이점은 무엇입니까?

DDD
DDD원래의
2024-10-25 07:35:02734검색

Spread Syntax vs. Rest Parameter: What's the Difference?

확산 구문 대 Rest 매개변수: 차이점 이해

ES2015의 두 가지 새로운 기능인 확산 구문과 나머지 매개변수는 다음을 수행하는 강력한 방법을 제공합니다. 배열과 객체를 조작합니다. 둘 다 비슷해 보이지만 서로 다른 용도로 사용되며 각각 고유한 기능을 가지고 있습니다.

확산 구문

확산 구문(세 개의 점 "..."으로 표시됨) )를 사용하면 반복 가능 항목(예: 배열 또는 객체)을 다른 반복 가능 항목 내의 개별 요소로 확산하거나 확장할 수 있습니다. 이 기능을 사용하면 여러 배열이나 개체를 새로운 배열이나 개체로 편리하게 병합하거나 결합할 수 있습니다.

예를 들어 다음 코드를 고려해 보겠습니다.

<code class="js">var abc = ['a', 'b', 'c'];
var def = ['d', 'e', 'f'];
var alpha = [ ...abc, ...def ];
console.log(alpha); // alpha == ['a', 'b', 'c', 'd', 'e', 'f'];</code>

이 스니펫에서 ... abc 및 ...def 확산 구문은 abc 및 def 배열을 개별 요소로 확장하여 두 배열의 모든 요소를 ​​포함하는 새로운 알파 배열을 생성합니다.

Rest 매개변수

반면에 나머지 매개변수(식별자 앞에 점 3개 "..."로 표시됨)는 함수에 전달된 나머지 인수를 단일 배열로 수집합니다. 나머지 매개변수는 함수 매개변수 목록의 마지막 매개변수여야 합니다.

작동 중인 나머지 매개변수의 예는 다음과 같습니다.

<code class="js">function sumAll(...numbers) {
  let total = 0;
  for (let num of numbers) {
    total += num;
  }
  return total;
}

let result = sumAll(1, 2, 3, 4, 5);
console.log(result); // result == 15</code>

이 코드에서 ...숫자 나머지 매개변수는 sumAll 함수에 전달된 나머지 인수(이 경우 1, 2, 3, 4, 5)를 수집하여 단일 숫자 배열을 생성합니다.

위 내용은 스프레드 구문과 나머지 매개변수: 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.