ES6 二 解構賦值

2021-10-09 06:46:49 字數 1692 閱讀 4279

從陣列和物件中提取值,對變數進行賦值,這被稱為解構

(1)從函式返回多個值

let

[a, b]=(

[1,2

][(a, b)]=

[2,1

]);// a = 2 ; b = 1

(2)接收從函式返回的多個值

函式只能返回乙個值,想返回多個需要返回乙個物件或陣列,用解構賦值取值非常方便

function

exam()

let[a,b,c]

=exam()

// a=1;b=2;c=3

function

exam()

}let

=exam()

// fo:'hi' // to:'hello'

(3)函式引數的定義

利用陣列解構的特點,會按順序匹配

function

test

([x,y,z]

)test([

1,2,

3]) 利用物件解構的特點:會自動找key相同的變數值

function

test()

test

()

(4)提取 json 資料

解構賦值對提取複雜的json資料非常方便;

const jsondata =

;let

= jsondata;

console.

lgo(id, status, datasource)

;// 43,'ok',[100,200]

(5)函式引數的預設值

function

test

(foo=

'nihao'

,too=

'hi'

)指定函式引數的預設值,當某個引數不傳時可以使用預設值代替,不用像之前too||

'default too'

(6)遍歷 map 結構

任何部署了 iterator 介面的物件,都可以用 for…of 迴圈遍歷。map 結構原生支援 iterator 介面,配合變數的解構賦值,獲取鍵名和鍵值就非常方便。

const map =

newmap()

;map.

set(

'first'

,'hello'

)map.

set(

'second'

,'world'

)for

([a,b]

of map)

// 只獲取key

for(

[a]of map)

// 只獲取value

for(

[,b]

of map)

(7)輸入模組的指定方法

在匯入模組時直接將裡面的方法解構出來

import

from

"dva"

;

es6(二) 解構賦值

es中允許按照一定格式從陣列,物件值提取值,對變數進行賦值,這就是解構 destructuring 1 let a,b,c 1,10,100 2 console.log a,b,c 1 10 1003 等式兩邊 模式 進行匹配,從而進行賦值 4 let i,j k 1,2 3 這種看看就好,知道這樣...

ES6 解構賦值

陣列的解構賦值 let a,b 12,13 let a,b,c d 13,15,16 let a,b c 78,12 23 let x,y 1,3,5 x 1,y 3 let x,y,z a x a,y undefined z let h,b 1,2,3,4 1,2,3,4 預設值 let x tr...

ES6解構賦值

一 基本用法 解構 destructuring 按照一定的模式,從陣列或者物件中提取值,對變數進行賦值。let par1,par2,par3 1,2 console.log par1,par2,par3 1 2 不完全解構時par3對值為undefined 解構賦值允許指定變數對預設值。let pa...