map数据类型
map与Object非常类似
map与Object的最大区别是:map的key可以是任何数据类型,object的可以只能是字符串
- 创建空map
//创建空map
let dic = new Map()
// //map的key可以是任何数据类型
dic.set("uname", "张三") //字符串
dic.set("age", 21)
dic.set({}, "个人信心") //对象
dic.set(function () { }, "我会说话") //函数
dic.set(true, "是否考试通过") //布尔值
console.log(dic)
key值是可以是任何数据类型
- map常用的方法
set() 添加属性
get()获取属性
delete()删除属性
Clare()清空
forEach()循环遍历
//创建空map
let dic = new Map()
//添加
dic.set("uname", "张三")
dic.set("address", "北京")
//获取
console.log(dic.get("uname"))
console.log(dic)
//删除
dic.delete("uname")
console.log(dic)
//清空
dic.clear()
console.log(dic)
//遍历
dic.forEach((item, index) => {
console.log(item, index)
})
console.log(dic)
for (v of dic) {
console.log(v)
}
set 添加
get 获取属性
delete删除
clare清空
forEach循环遍历
因为map数据类型是可枚举的,所以也可是用for of 循环
- 初始化map
初始化map时里面有传入初始值,这个是必须是以二维数据的形式进行传递
//初始化map的时候,里面有值
//数据格式必须是二维数组的形式
let dic = new Map([["uname", "张三"], ["age", 21]])
console.log(dic)
set数据类型
集合:里面的元素不能重复
- 创建空set
// 创建空的set
var mySet = new Set()
- set常用方法
add()添加
delete()删除
clare()清空
forEach()循环遍历
has()判断元素是否存在
size()获取元素数量
// 创建空的set
var mySet = new Set()
//添加元素
mySet.add("中国")
mySet.add("北京")
//获取元素数量
console.log(mySet.size)
//删除元素
mySet.delete("中国")
// console.log(mySet)
//添加复杂数据类型
mySet.add({ uname: "张三" })
// console.log(mySet)
//set是可遍历的(可迭代 iterater)
for (item of mySet) {
console.log(item)
}
//判断某元素是否存在
var result = mySet.has("中国北京")
console.log(result)
//清除set
mySet.clear()
// console.log(mySet)
//forEach循环
mySet.forEach(item => {
console.log(item)
})
console.log(mySet);
add()添加
添加复杂数类型
forEach()循环遍历
var result = mySet.has("中国北京")
console.log(result)
//元素是否存在
var result = mySet.has("中国")
console.log(result)
has()判断字符是否存在
size() 获取元素数量
delete 删除
clare 清空
可迭代数据类型
-
Array
-
String
-
NodeList 节点列表
-
Set 集合
-
map