>웹 프론트엔드 >JS 튜토리얼 >ES6의 확장 기호 소개

ES6의 확장 기호 소개

不言
不言앞으로
2018-11-14 15:41:543563검색

이 기사는 ES6의 확장 기호에 대한 소개를 제공합니다. 이는 특정 참조 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

개요

확장 기호는 문자열 분할, 배열 병합, 배열 복사, 개체 병합, 개체 복사에 자주 사용됩니다.

0x001 구문

...iterableObj

0x002 함수 호출 시 매개변수 확장

함수 호출 시 매개변수가 확장되는 것으로 나머지 매개변수와는 다르게 함수 선언에 사용됩니다

myFunction(...iterableObj);

Case

function add(a, b){
    return a + b
}
add(...[1,2]) // 相当于 add(1,2) -> 3

array 문 확장

배열 병합에 사용 가능

[...[1,2,3],4] // 相当于[1,2,3].push(4) -> [1,2,3,4]
[...'1234'] // 相当于 '1234'.split("")

객체 확장

객체 병합 및 객체 복사에 사용 가능

{...{name:1},age:2} // 相当于 Objeact.assign({},{name:1},{age:2}) -> {name:1,age:2}
{...{name:1}} // 相当于 Object.assign({},{name:1}) -> {name:1}

babel 번역

문자열/배열 확장

소스 코드

[...'1234']

translated

function _toConsumableArray(arr) {
 if (Array.isArray(arr)) {
  for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
   arr2[i] = arr[i]; 
   }
   return arr2; 
   } else { 
   return Array.from(arr); 
   } 
   }

[].concat(_toConsumableArray('1234'));

개체 확장

소스 코드

let a={...{name:1}}

번역됨

var _extends = Object.assign || function (target) {
 for (var i = 1; i < arguments.length; i++) {
  var source = arguments[i]; 
  for (var key in source) {
   if (Object.prototype.hasOwnProperty.call(source, key))
    { target[key] = source[key]; 
    } 
    } 
    }
     return target; 
     };

var a = _extends({ name: 1 });

위 내용은 ES6의 확장 기호 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 https://segmentfault.com/a/1190000016977223에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제