ES8新增对对象快速遍历的方法segmentfault
Object.keys()数组
Object.entries()学习
ES5spa
let grade = { "lilei": 96, "hanmeimei": 99 } let result = [] for (let k in grade) { result.push(k) } console.log(result) //["lilei", "hanmeimei"]
ES8code
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"]
ES8blog
let grade = { "lilei": 96, "hanmeimei": 99 } console.log(Object.keys(grade).filter(item => item === 'lilei')) // ["lilei"] // 返回一个数组,以后能够对数组进行合并、替换、查找
let grade = { "lilei": 96, "hanmeimei": 99 } console.log(Object.values(grade)) // [96,99] console.log(Object.values(grade).filter(item => item > 97)) //[99]
能够结合 ES6(十五)—— lterator 使用rem
let grade = { "lilei": 96, "hanmeimei": 99 } for(let [k, v] of Object.entries(grade)){ console.log(k,v) } // lilei 96 // hanmeimei 99
本质依旧是把对象变成可遍历的,符合lterator
结构的get
let grade = { "lilei": 96, "hanmeimei": 99 } let map1 = new Map(Object.entries(grade)) map1.get("lilei") // 96