第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

es6中...是什么意思。能分別解釋一下下面的表達式么

es6中...是什么意思。能分別解釋一下下面的表達式么

HUX布斯 2018-10-10 11:14:31
1var set = new Set([1, 2, 3, 4, 4,4,4,4,2,2,2])         set=[...set]2let [head, ...tail] = [1, 2, 3, 4];3let [x, y, ...z] = ['a'];
查看完整描述

1 回答

?
至尊寶的傳說

TA貢獻1789條經(jīng)驗 獲得超10個贊

第一個叫做 展開運算符(spread operator),作用是和字面意思一樣,就是把東西展開??梢杂迷?code>array和object上都行。
比如:

let a = [1,2,3];

let b = [0, ...a, 4]; // [0,1,2,3,4]


let obj = { a: 1, b: 2 };

let obj2 = { ...obj, c: 3 }; // { a:1, b:2, c:3 }

let obj3 = { ...obj, a: 3 }; // { a:3, b:2 }

第二個,第三個叫做 剩余操作符(rest operator),是解構(gòu)的一種,意思就是把剩余的東西放到一個array里面賦值給它。一般只針對array的解構(gòu),其他的沒見過。。。
比如:

let a = [1,2,3];

let [b, ...c] = a;

b; // 1

c; // [2,3]


// 也可以

let a = [1,2,3];

let [b, ...[c,d,e]] = a;

b; // 1

c; // 2

d; // 3

e; // undefined


// 也可以

function test(a, ...rest){

  console.log(a); // 1

  console.log(rest); // [2,3]

}


test(1,2,3)


查看完整回答
反對 回復(fù) 2018-11-16
  • 1 回答
  • 0 關(guān)注
  • 2589 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號