2017-01-26 1 views
0

나는 codewars 카타 일부 다른 솔루션을 검토 한 후 '최고'솔루션이 줄을 건너 온 :Javascript에서 '...'은 무엇을 의미합니까?

result.push(...algo(numbers[i])); 

이 맥락에서 '...'의 목적은 무엇인가? 나는 전에 이것을 보지 못했고 아무 데서도 그것을 찾을 수 없다.

이 기능은 ES6의 새로운 기능입니까?

더 많은 컨텍스트가 필요하다면 '다른 방법으로 모두 짝수를 짝수로 나누어서'카타를 만들고 'ph0en1x'사용자가 솔루션을 만들었습니다.

다른 잠재적 인 사용자에 대한 도전을 망치고 두려워하여 전체 코드를 여기에 게시하고 싶지는 마십시오.

누구든지 명확히 할 수 있다면 고마워요!

+3

은 [확산 * * 구문 (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator), 거기 가지고있어 dupetarget이 ... –

답변

4

spread 연산자라는 ES6 기능입니다.

[1,2,3]과 같은 배열 객체가 있고 3 개의 매개 변수를 사용하는 함수가 있다면, func(arr[0], arr[1], arr[2])처럼 전달할 필요가 없습니다. func(...arr) 배열을 확산시킬 수 있으며 대신 배열을 사용할 수 있습니다.

var arr = [1,2,3]; 
 

 
function func(a,b,c){ 
 
    console.log(a); // arr[0] 
 
    console.log(b); // arr[1] 
 
    console.log(c); // arr[2] 
 
} 
 

 
func(...arr);

+0

당신은 휴식 구문으로 다른 의미를 metion해야합니다. –

+0

나머지는 또 다른 feautre입니다, 안 그래?. 그것은 함수 선언으로 가고 있습니다. –

+0

같은 점을 사용하는 호출이 아닙니다. –

관련 문제