天天看点

Map数据结构以及方法和数据遍历

    前面说过Set和Map是ES6中的新的数据结构(不是数据类型是存储数据的集合结构),上面说过,Set类似与数据的形式而这个类似与object(对象),看一下这个Map对象的结构的声明!这个Map也是一个键值对!

var m =new Map()
			m.set(1,'abc')
			m.set('啊哈哈',853)
			m.set(6,123)
			m.set(4,'00')
			console.log(m)
			console.log(m.get(4))           

复制

通过上述定义可以看出通过set方法可以设置Map的对象,get得到指定的索引对应值.

看一下Map结构的其他方法

 类似与Set的其他三种方法(删除元素,判断存在和清空结构)

 判断存在----has

 删除-------delete

 清空-----clear

Map的初始化

  定义一个Map类型可以传入一个二维数组,

let m =new Map([
				[1>5,"大于"],
				[6,"six"],
				[0,false],
				["abc",'单词'],
			])
			console.log(m)
			console.log(m.get("abc"))           

复制

    类似与Set传入一个数组,这里传入二维数据!Set的索引(Key)可以传入任意类型而object只能传入字符串

Map结构遍历和Set类似,可以使用for...keys遍历键,values遍历值,entries遍历键值

//遍历索引
//for (x of m.keys()) {
//console.log(x)
//}
//遍历 键值
//for (x of m.values()) {
//console.log(x)
//}
//遍历键值对 entries
for (x of m.entries()){
console.log(x)
}           

复制