这篇文章主要介绍Javascript ES6中对象类型Sets怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联建站专注于企业成都全网营销、网站重做改版、登封网站定制设计、自适应品牌网站建设、H5开发、成都商城网站开发、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为登封等各大城市提供网站开发制作服务。介绍
ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准。因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015。
Sets 是ES6(ES2015)中一个新的对象类型,用来创建一系列唯一值的集合。集合中的值可以是简单的原始类型如字符串(strings)或整数(integers),也可以是更复杂的对象类型如对象字面量或者数组。
基本方法
下面是基本的set及其方法(add, size, has, forEach, delete, clear)的简单示例:
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
初始化
下面是另一个将数组作为初始值传进set的示例。需要主要的是初始化的数组是如何被解构的,但是随后添加的数组将以数组的形式存在:
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: "?" }
字符串也是一个有效的迭代,所以也可以被传入来初始化一个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遍历
除了在一个set上可以使用forEach外,for...of循环也可以被用来遍历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的别名,所以两个方法其实是完成一样的事情。使用两者中的任何一个方法都会返回一个新的可迭代的对象,该对象的值与添加到集合中的顺序相同。
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中对象类型Sets怎么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联网站建设公司行业资讯频道!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。