新的数据类型 set 不能有重复值 add() delete() has() size clear() 可以链式操作
跟数组差不多,但是值是唯一的。
var set = new Set(['a','b','c','a'])
console.log(set)
set.add('e')
console.log(set)
set.delete('b')
console.log(set)
console.log(set.size)
console.log(set.has('b'))
//set.clear()
for(var [key,value] of set.entries()){
console.log(key,value)
}
set.forEach((item)=>{
console.log(item)
})
// keys() values() entries() 默认是values
// for in 默认是keys
// 初始{}不可以,add{}可以
可以利用set结构的特点进行数组去重
// 数组去重
let arr = [1,2,3,4,12,34,4]
let set1= new Set(arr)
console.log(set1)
console.log([...set1])
Map set() get(key) han() delete() clear()
初始化Map需要一个二维数组,或者直接初始化一个空Map
var map = new Map([['1','3']])
map.set('a','aaa')
console.log(map)
console.log(map.get('a'))
map.delete('a')
console.log(map)
//WeakMap 规定key值只能是对象
var map2 = new WeakMap()
//0b 是二进制的前缀
let aaa = 0b10
console.log(aaa)
// 0o 是八进制的前缀
let bbb = 0o1234;
console.log(bbb)
// 判断是不是数字
console.log(Number.isNaN())
console.log(Number.isFinite(bbb))
// 判断是不是整数
console.log(Number.isInteger(12.5))
// 安全整数 -(2^53-1) 到 2^53-1 包含本身
console.log(Number.isSafeInteger())
console.log(2**53 - 1)
console.log(Number.MAX_SAFE_INTEGER)
//Math 新增的东西
console.log(Math.trunc()) //只保留整数 截断 跟向下取整差不多
console.log(Math.sign()) //判断正负数0
console.log(Math.cbrt()) //立方根