es6允許按照一定的模式從物件或者陣列中取值,然後對變數進行賦值,這被稱為解構賦值
const server=
//常規寫法
const ip=server.ip;
const port=server.port;
//解構賦值寫法
const
=server;
//舉幾個例子
let[x,
,y]=[1
,2,3
]console.
log(x,y)
;//1,3
let[***,age]=[
1]console.
log(***,age)
// 1,undefined
let[q,
[w],e]=[
1,[2
,3],
4]console.
log(q,w,e)
//1,2,4
//如果等號右邊不是陣列(或者嚴格來說不是可遍歷的結構),就會報錯
let[t]=1
let[t]
=false
let[t]
=//解構賦值允許指定預設值
//es6內部嚴格使用相等運算子===判斷乙個位置是否有值,如果乙個陣列成員不嚴格等於undefined,預設值是不會生效的
let[x,y =
'b']=[
'a']
console.
log(x,y)
//a,b
let[m,n=
'b']=[
'a',undefined]
console.
log(m,n)
//a,b
let[k=1]
=[null
]console.
log(k)
//null:因為null不嚴格等於undefined,所以預設值不會生效
//預設值可以引用解構賦值的其他變數,但是該變數必須已經宣告
let[ee=
1,ff=ee]=[
1,2]
console.
log(ee,ff)
//1,2
let[gg=hh,hh=1]
=[]console.
log(gg,hh)
//報錯:因為gg用到預設值hh時,hh還沒有宣告
ES6學習鞏固2
1 物件的屬性可以簡寫 表示 name name 物件的方法可以簡寫 表示 fn function 普通物件 就是自己建立的簡單物件 特異物件 就是修改了 symbol屬性的物件 標準物件 就是標準已經提供的一些特殊行為的物件 array date 內建物件 就是執行環境中已經提供的物件 標準物件是...
ES6學習筆記2
允許給函式引數賦初值 1 形參具有預設初始值,一般位置靠後 function add a,b,c 10 let result add 1,2 console.log result 2 與解構賦值結合 function connect options 會重複寫到options.connect 採用解構...
前端ES6學習日記(2) 解構賦值
解構是es6新增的一種變數賦值方式。如以前的 var a 1 var b 2 var c 3 可以用下面解構賦值代替 var a,b,c 1,2,3 該解構允許巢狀,如下 let a,b c 1,2 3 允許有預設值 let c 1,2,3 c 3 let a,b 1,2,3,4 a 1,b 2,3...