이번에는 ES6의 구조분해 할당에 대한 자세한 설명을 가져왔습니다. ES6의 구조분해 할당을 사용할 때 주의할 점은 무엇인가요? 실제 사례를 살펴보겠습니다. @1 배열의 구조 분해 할당;
let [a,b,c]=[1,2,3]; console.log(a,b,c) //1 2 3 ---------------------------------------------------------------- let [a=true]=[]; console.log(a) //a=true; ---------------------------------------------------------------- let[a=true]=[undefined]; let[b=true]=[null] console.log(a,b) //a=true,b=null
사실, 정의되지 않은 것과 null의 차이점을 이해하는 것은 매우 간단합니다. 비록 undefine==null;
하더라도 여전히 구별 가능하다는 점은 null이라고 나와 있습니다. 빈
objectpointertypeof null ==>object;而undefined可以认为在下面两种情况会出现;
1. 배열에 존재하지 않는 항목에 액세스;
2. 정의되지 않은 변수 var 메소드;
그래서 다음 두 가지는 동일합니다.
let[a=true]=[undefined]; let[a=true]=[ ];
이유를 이해하는 것은 어렵지 않습니다. ;
@2 객체의 구조 분해 할당;
배열과 달리 객체의 구조 분해 할당은 인덱스가 아닌 키를 기반으로 합니다.
let {foo,bar}={bar:"liuhf",foo:true}; //跟键的顺序没有关系;
const [a,b,c,d,e,f]="liuhee"; console.log(a,b,c,d,e,f); // l i u h e e구조 분해 할당, 왼쪽과 오른쪽이 일치해야 합니다. 4470d494d5327df940128b111cca152e
let json = { a: '对', b: '象' } //对象的函数解构; function fun({ a, b = 'jspang' }) { console.log(a, b); } fun(json); //数组的函数解构; let arr = ["liu", "hai"] function fun1([a, b]) { console.log(a, b); } fun1(arr); console.log("------------"); //或者; function fun2(a, b) { console.log(a, b); } fun2(...arr);믿습니다. 이 기사의 사례를 읽은 후 방법을 익혔습니다. 더 흥미로운 내용을 보려면 온라인에서 PHP 중국어 관련 기사를 주목하세요! 관련 읽기:
webpack3의 항목, 출력, 모듈 분석
.위 내용은 ES6의 구조분해 할당에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!