這篇文章主要介紹Javascript ES6中對(duì)象類型Sets怎么用,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
越秀網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,越秀網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為越秀成百上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的越秀做網(wǎng)站的公司定做!
介紹
ECMAScript 6(以下簡(jiǎn)稱ES6)是JavaScript語(yǔ)言的下一代標(biāo)準(zhǔn)。因?yàn)楫?dāng)前版本的ES6是在2015年發(fā)布的,所以又稱ECMAScript 2015。
Sets 是ES6(ES2015)中一個(gè)新的對(duì)象類型,用來(lái)創(chuàng)建一系列唯一值的集合。集合中的值可以是簡(jiǎn)單的原始類型如字符串(strings)或整數(shù)(integers),也可以是更復(fù)雜的對(duì)象類型如對(duì)象字面量或者數(shù)組。
基本方法
下面是基本的set及其方法(add, size, has, forEach, delete, clear)的簡(jiǎn)單示例:
let animals = new Set(); animals.add('?'); animals.add('?'); animals.add('?'); animals.add('?'); console.log(animals.size); // 4 animals.add('?'); console.log(animals.size); // 4 console.log(animals.has('?')); // true animals.delete('?'); console.log(animals.has('?')); // false animals.forEach(animal => { console.log(`Hey ${animal}!`); }); // Hey ?! // Hey ?! // Hey ?! animals.clear(); console.log(animals.size); // 0
初始化
下面是另一個(gè)將數(shù)組作為初始值傳進(jìn)set的示例。需要主要的是初始化的數(shù)組是如何被解構(gòu)的,但是隨后添加的數(shù)組將以數(shù)組的形式存在:
let myAnimals = new Set(['?', '?', '?', '?']); myAnimals.add(['?', '?']); myAnimals.add({ name: 'Rud', type: '?' }); console.log(myAnimals.size); // 4 myAnimals.forEach(animal => { console.log(animal); }); // ? // ? // ["?", "?"] // Object { name: "Rud", type: "?" }
字符串也是一個(gè)有效的迭代,所以也可以被傳入來(lái)初始化一個(gè)set:
console.log('Only unique characters will be in this set.'.length); // 43 let sentence = new Set('Only unique characters will be in this set.'); console.log(sentence.size); // 18
For...of遍歷
除了在一個(gè)set上可以使用forEach外,for...of循環(huán)也可以被用來(lái)遍歷sets:
let moreAnimals = new Set(['?', '?', '?', '?']); for (let animal of moreAnimals) { console.log(`Howdy ${ animal }`); } // Howdy ? // Howdy ? // Howdy ? // Howdy ?
Keys 和 Values
Sets也有keys和values方法,由于keys是values的別名,所以兩個(gè)方法其實(shí)是完成一樣的事情。使用兩者中的任何一個(gè)方法都會(huì)返回一個(gè)新的可迭代的對(duì)象,該對(duì)象的值與添加到集合中的順序相同。
let partyItems = new Set(['?', '?', '?']); let items = partyItems.values(); console.log(items.next()); console.log(items.next()); console.log(items.next()); console.log(items.next().done); // Object { // done: false, // value: "?" // } // Object { // done: false, // value: "?" // } // Object { // done: false, // value: "?" // } // true
以上是“Javascript ES6中對(duì)象類型Sets怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!