一直以来使用数组和对象来定义数据模型,前几天在翻阅ES6语法的时候,突然发现有一种Map对象对操作键值对特别好用,而且代码更简洁明了,简直太棒了。 
今天,我们就来一步步了解什么是Map对象,详细给大家介绍一下Map对象的属性和方法。希望大家以后再数据操纵方法多一种解决问题的方法,这是ECMA 6 新增的数据结构。
定义 Map对象保存键/值对,是键/值对的集合。任何值(对象或者原始值) 都可以作为一个键或一个值。Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应。 语法: mapObj=new Map([iterable]); iterable 可以是一个数组或者其他iterable 对象,其元素或为键值对,或为两个元素的数组。 每个键值对都会添加到新的 Map。null 会被当做 undefined。 Map实例 所有的Map实例都会继承自Map.prototype。 示例 Map对象类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。 let a=new Map();
let b={p:'Hello World'};
a.set(b,"content");
a.get(b); //"content"
a.has(b) //true
a.delete(b) //true
a.has(b) //false 作为构造函数,Map也可以接受一个数组作为参数。该数组的成员是一个个表示键值对的数组。 let map=new Map(['first','aaaaaa'],['second','bbbbbb']);;
map.size(); //2
map.has('first'); //true
a.get(b); //'aaaaaa'
map.has('second'); //true
a.get(b); //'bbbbbb' 以上就是js怎么定义map的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章! |