ES6의 해체

1 ES6 특정 패턴에있어서, (Distructuring) 해체라고 배열 및 목적 변수의 할당에서의 값을 추출하여 허용;

하자 [A, B, C = [3,5,6]; // = 5, 6, C = B, A = 3에 대응

본질적으로, "패턴 매치"만큼 등호의 양쪽에 동일한 패턴의 이러한 접근법은, 왼쪽의 변수는 대응하는 값을 설명한다. 해체 실패한 경우 변수의 값은 정의와 같다

또 다른 상황이 모델은 등호, 등호의 오른쪽 부분 일치의 배열의 왼쪽 것으로, 해체의 완전 할 수 없습니다. 이 경우, 해체는 여전히 성공할 수 있습니다.

2 해체 배열 할당

완전한 해체 :

하자 [A, B, C = [6,7,8]; // A = 6 인 경우, b = 7, C = 8

불완전한 해체

하자 [A, B], C = [2 [4,6], 7; // A = 2, B = 4, C = 7

해체의 컬렉션 :

[머리 ... 꼬리] = [1,3,4,5,6]을하자; // = 1 머리, 꼬리 = [3,4,5,6]

(또한 기능을 할 수있다 기본값) 기본 값을 설정합니다 :

하자 [X, Y = 'B'] = 'A']; // X = A, Y는 B를 =

3, 객체의 해체 할당

① 개체 속성의 해체 변수 이름은 값을하기 위해 존재해야합니다;

{이름, 나이} = {이름 : 'zjl', 연령 : 18} 내버려 // 이름 = 'zjl', 나이 = 18 참고 : 변수 이름은 객체의 속성 이름에 남아 있어야합니다

② 이름 속성을 가진 변수 이름이 일치하지 않는 경우, 작성해야합니다 다음과 같이 이름 바꾸기

보자 {이름 : 사용자 이름, 나이} = {이름 : 'zjl', 연령 : 18} // 사용자 이름 = 'zjl', 나이 = 18

③ 두 번째 알려진 점에 따르면, destructuring 할당은 다음과 같은 방법으로 축약

보자 {이름 : 이름, 나이 : 나이} = {이름 : 'zjl', 연령 : 18} // 객체의 속성과 속성 때 동일이 값을 생략 할 수있다

④ 중첩 해체

= {[X, Y {}] {P}하자 P : '안녕하세요', {Y '세계}]} // X = 안녕하세요 Y = 세계

⑤ 해체는 기본값을 설정할 수 있습니다 오브젝트

보자 {X : Y = 9} = {10} // Y = 9

4, 해체 문자열 지정

① 해체하면, 캐릭터 오브젝트의 유사한 배열로 변환된다.

CONST [A, B, C] = 'zjl'// A = 'Z'= B 'J', C = L ''

해체의 길이 속성 문자열을 ②

하자 {길이} = '안녕하세요'// 길이 = 5

5 및 부울 배열 해체 할당 값

해체는 등호 우측은 숫자 및 부울 값이면, 첫 번째 객체를 회전 할 때

{toString : S}하자 = 123; //函数의 ===의 Number.prototype.toString 진정한 
하자가 {toString이 :들} 진정한 =; //函数의 ===의 Boolean.prototype.toString 사실

6, 해체 할당을 사용

변수 ① 교환 가치

있도록 X = 1; Y = 2하자; [X, Y = [Y, X];

② 함수 반환 값

기능 예 () {반환 [1, 2, 3]; } 
) ([A, B, C = 예 보자;

③ 정의 함수 파라미터

함수 f ([X, Y, Z]) {...} 
F ([1, 2, 3]);

④ 지정된 값 수요 가져 오기 모듈 소개

 

추천

출처www.cnblogs.com/zjl-712/p/11443040.html