目录
ES8新增对对象疾速遍历的办法
Object.keys()
- 返回一个数组
- 条件筛选
- Object.values()
Object.entries()
- 能够把对象变成可遍历的对象
- 能够传到Map中变成一个map对象进行操作
- ES6-ES10学习幅员
ES8新增对对象疾速遍历的办法
Object.keys()
- 参数是指标对象
- 返回的是指定对象的键组成的数组
返回一个数组
ES5
let grade = { "lilei": 96, "hanmeimei": 99}let result = []for (let k in grade) { result.push(k)}console.log(result) //["lilei", "hanmeimei"]
ES8
let grade = { "lilei": 96, "hanmeimei": 99}console.log(Object.keys(grade)) //["lilei", "hanmeimei"]
条件筛选
ES5
let grade = { "lilei": 96, "hanmeimei": 99}let result = []for (let k in grade) { if(k === 'lilei'){ result.push(k) }}console.log(result) // ["lilei"]
ES8
let grade = { "lilei": 96, "hanmeimei": 99}console.log(Object.keys(grade).filter(item => item === 'lilei')) // ["lilei"]// 返回一个数组,之后能够对数组进行合并、替换、查找
Object.values()
- 参数是指标对象
- 返回的是值组成的数组
let grade = { "lilei": 96, "hanmeimei": 99}console.log(Object.values(grade)) // [96,99]console.log(Object.values(grade).filter(item => item > 97)) //[99]
Object.entries()
能够把对象变成可遍历的对象
能够联合 ES6(十五)—— lterator 应用
let grade = { "lilei": 96, "hanmeimei": 99}for(let [k, v] of Object.entries(grade)){ console.log(k,v)}// lilei 96// hanmeimei 99
能够传到Map中变成一个map对象进行操作
实质仍旧是把对象变成可遍历的,合乎lterator
构造的
let grade = { "lilei": 96, "hanmeimei": 99}let map1 = new Map(Object.entries(grade))map1.get("lilei") // 96