亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

ECMAScript6.0新特性介紹第六篇

標簽:
JavaScript

在ES6中又增加了一些新的数据结构Set和Map。Set结构类似于数组,但是它不能存放相同的值,也就是说Set集合中每个成员都是唯一的。Map也是一种集合,它和Set集合的区别就是Set集合里面存放的值都是单个的,而Map存放的都是键值对形式的。关于Set和Map集合的使用请参考如下代码。

  • Set集合的使用
//set集合中不会出现重复的值
 var s = new Set();   
[2,3,5,4,5,2,2].map(x => s.add(x))
console.log(...s);//输出2,3,5,4
console.log(s.size);//输出s中元素的个数:4
//set 集合中有四个常用的法:add(value),delete(value),has(value)和clear(value)
//add 方法的使用
s.add('nanjing');
s.add('hangzhou');
s.add('beijing');
console.log(...s);//输出 2 3 5 4 'nanjing' 'hangzhou' 'beijing'
//delete方法的使用
s.delete(2);
s.delete(3);
s.delete(4);
s.delete(5);
console.log(...s);//输出nanjing hangzhou beijing
//has方法的使用
let flag=s.has('hangzhou');
console.log(flag);//输出true
flag=s.has('shanghai');
console.log(flag);//输出false
//clear方法的使用
s.clear();
console.log(s);//输出set{} 表明set集合中的值已经被清空
//set 集合的遍历 :Set集合提供了四个方法来遍历Set集合,分别是keys(),values(),entries(),forEach()。具体用法如下:
let names = new Set(['zhangsan', 'lisi', 'wangwu']);
for (let name of names.keys()) {
    console.log(name);//输出:zhangsan,lisi,wangwu
}
console.log("----分割线----------");
for (let name of names.values()) {
    console.log(name);//输出:zhangsan,lisi,wangwu
}
console.log("----分割线----------");
for (let [key,value] of names.entries()) {
    console.log(key+":"+value);//输出:zhangsan:zhangsan,lisi:lisi,wangwu:wangwu
}
console.log("----分割线----------");
names.forEach(item=>console.log(item));//输出:zhangsan,lisi,wangwu
  • Map集合的使用
let student=new Map();
student.set('name','zhangsan');
student.set('name','lisi');
student.set('address',{province:'sichuan',city:'chengdu'});
console.log(student.size);//输出:2
console.log(student.get('address'));//s输出 { province: 'sichuan', city: 'chengdu' }
console.log(student.has('address'));//true
console.log(student.delete('address'));//true
console.log(student.has('address'));//false
student.set('age',20);
student.set('job','software enginer');
for(let key of student.keys()){
    console.log(key);//输出 name,age,job
}
for(let value of student.values()){
    console.log(value);//输出 lisi,20,software enginer
}
for(let [key,value] of student.entries()){
    console.log(key+':'+value);//输出 name:lisi,age:20,job:software enginer
}
點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
25
獲贊與收藏
75

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消