JavaScript---map和set

/**
 * Created by kzero on 2016/10/16.
 */
// var m = new Map();
// var s = new Set();
// alert('你的浏览器支持Map和Set!');

// //初始化Map需要一个二维数组,或者直接初始化一个空Map
// var m = new Map([['Michael',95],['Bob',75],['Tracy',85]]);
// var str = m.get('Bob');
// console.log(str);
//
// var map = new Map();//创建
// map.set('a',1);//添加
// map.set('b',2);
// map.set('c',3);
// map.set('d',4);
// console.log(map);
//
// if(map.has('a'))//是否有某个值
// {
//     console.log(map.get('a'));//获取值
//     map.delete('a');//删除值
//     console.log(map);
// }
// else
// {
//     console.log('没有');
// }

//要创建一个Set,需要提供一个Array作为输入,或者直接创建一个空Set

// var s1 = new Set(); // 空Set
// var s2 = new Set([1, 2, 3]); //1, 2, 3
// var s3 = new Set([1,1,2,2,3,3]);//1,2,3,自动过滤重复元素
// s1.add(3);//数字
// s1.add('3');//字符串,两个三不一样
// console.log(s1);
// s1.delete(3);
// console.log(s1);

// //遍历Array可以采用下标循环,遍历Map和Set就无法使用下标。
// //为了统一集合类型,ES6标准引入了新的iterable类型,Array、Map和Set都属于iterable类型。
// //具有iterable类型的集合可以通过新的for ... of循环来遍历

// var a = [1,2,3];
// for(var x of a ){//遍历数组
//     console.log(x);
// }
//
// var my_array = ['a','b','c'];//array
// var my_set = new Set(['a','b','c','d']);//set
// var my_map = new Map([['a',1],['b',2],['c',3]]);//map
//
// console.log("遍历array");
// for(var x of my_array){
//     console.log(x);
// }
//
// console.log("遍历set");
// for(var x of my_set){
//     console.log(x);
// }
//
// console.log("遍历map");
// for(var x of my_map){
//     console.log(x[0] + '=' + x[1]);//map的元素是键值对,x[0]->键,x[1]->// }

// //iterable内置的forEach方法,它接收一个函数,每次迭代就自动回调该函数。
//
// var a = ['A', 'B', 'C'];
// a.forEach(function (element, index, array) {
//     // element: 指向当前元素的值
//     // index: 指向当前索引
//     // array: 指向Array对象本身
//     console.log(element);
// });
//
// //Set与Array类似,但Set没有索引,因此回调函数的前两个参数都是元素本身
// var s = new Set(['A', 'B', 'C']);
// s.forEach(function (element, sameElement, set) {
//     console.log((element));
// });
//
// //Map的回调函数参数依次为value、key和map本身:
//
// var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);
// m.forEach(function (value, key, map) {
//     console.log(value);
// });
//
// //如果对某些参数不感兴趣,由于JavaScript的函数调用不要求参数必须一致,因此可以忽略它们。例如,只需要获得Array的element:
//
// a.forEach(function (element) {
//     alert(element);
// });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值