当前位置: 代码迷 >> 综合 >> Object.keys()使用
  详细解决方案

Object.keys()使用

热度:31   发布时间:2023-12-16 04:27:49.0

问题:经常会有这样的场景,我们需要将多个对象放进数组,而我们一般的做法是,先创建一个新数组,然后遍历目标数组,取出数组中的每一项然后push 到这个新数组,

const dataList = [{
     "id":1, "name":"zhangsan", "age": 30 },{
     "id":2, "name":"lisi", "age": 25 },{
     "id":3, "name": "wangwu", "age": 22 }];const newArr = [];function pushObjIntoArr() {
    for (let i = 0; i <dataList.length; i++) {
    newArr.push({
    id: dataList[i].id,name: dataList[i].name,age: dataList[i].age})}return newArr}

然后有了es6的Object.assing([], arr),我们可以很方便的这样操作:

const newArr = Object.assign([], dataList)

这样就直接可以赋值给新的对象数组
那么,Object.keys()可以很方便的将对象转化为对象数组

const info = {
    name: 'zhangsan',age: 20,gender: 'male',address: 'beijing'
}
const infoObj = Object.keys(info).map(key => ({
    key,value: info[key]
}))
// 当然我们还可以做其他一些操作,比如:
const infoObj = Object.keys(info).map(key => {
    
//检索如果key为name时他的valueif (key === 'name') {
    return info[key]}
})
  相关解决方案