ES6新特性之解構使用細節

2022-08-28 09:39:10 字數 909 閱讀 2956

es6的解構說白了就是能夠讓我們一次性取到多個值,大致可分為一下幾個方面

1、陣列解構

普通的一維陣列解構,如下one = array[0],two=array[1],three=array[2]

var [one, tow, three] = array;
巢狀陣列解構

var [one,[[two],three]] = [1,[[2],3]];

// one=1;two=2;three=3

還可以跳過一些元素解構

var [,,three] = [1,2,3];

// three=3

指定不定引數進行解構

var [one,...three] = [1,2,3];

three=[2,3];

當訪問空陣列或則越界的時候得到undefined;

2、物件解構

物件解構使用{},首先指定要解構的屬性名,然後指定繫結的變數

var =;

// namea="jhon",agea=23

如果屬性名和變數名一致時,可以縮寫

var =;

// name="jhon",age=23

物件也可以像陣列一樣進行巢狀解構,當解構乙個未定義的屬性時得到undefined

如果已經宣告了某些變數或者沒有使用關鍵字(var,let,const),則像下面這樣使用會報錯,因為解析引擎將=;

// error

(=);

3、其他

典型應用,多重返回值

function show()

var [one, two] = show();

解構map

for( var [,value] of map)

ES6新特性 解構賦值

在很多場景下,我們發現乙個復合屬性中像物件 陣列,我們在使用時並不會每一次都用到其中的每一項 每乙個元素,所以es6的解構賦值就可以單獨將我們需要的屬性 元素取出,不用將物件 陣列全部載入,可以提高專案的執行效率。先宣告乙個物件 let obj 在這個物件中有兩個屬性,通過解構賦值,我們可以做到只載...

前端 (四)ES6新特性之解構賦值

等號左右兩邊的格式一樣,就可以將右邊的值賦值給左邊的變數,這種寫法實質是 模式匹配 舉個例子 以前賦值 var a 1 var b 2 var c 3 解構賦值 var a,b,c 1,2,3 let undefined typeerror let null typeerror要求 等號右邊必須為陣...

es6新特性 ES6新特性(一)

var 1 var宣告的是函式作用域 區域性 但在if for等定義的變數是全域性的 2 var 具有變數提公升,預解析 3 在同乙個作用域下,var可以宣告多次 4 var 宣告的變數會掛載到window上 let1 let不存在變數提公升,在變數使用之前,必須要先宣告 2 let在同一作用域下,...