【问题标题】:Data modification, set nested object to one level up and remove key [closed]Data modification, set nested object to one level up and remove key [closed]
【发布时间】:2022-12-01 14:12:09
【问题描述】:

Need to flat or remove platform key from nested object like this, platform key will be same for every object

climb up nested object properties to one level up and remove key value(platform) to make data consistent, as platform key is different for nested objects

{
  option1: {
    platform : {
      key1:value1,
      key2:value2,
      key3:value3
    }
  },
  option2: {
    platform : {
      key1:value1,
      key2:value2,
      key3:value3
    }
  },
  option3: {
    platform : {
      key1:value1,
      key2:value2,
      key3:value3
    }
  }
}

Expected output is like

{
  option1: {
      key1:value1,
      key2:value2,
      key3:value3
  },
  option2: {
      key1:value1,
      key2:value2,
      key3:value3
  },
  option3: {
      key1:value1,
      key2:value2,
      key3:value3
  }
}

I tried approach using for loop and if condition, but that seems expensive operations. I need a more simpler way to do that.

【问题讨论】:

  • Please add the code you've tried. Have you tried looping through the keys of the object? A simple loop like for(const key in data) data[key] = data[key].platform will work.

标签: javascript json object


【解决方案1】:

const obj = {"option1":{"platform":{"key1":"value1","key2":"value2","key3":"value3"}},"option2":{"platform":{"key1":"value1","key2":"value2","key3":"value3"}},"option3":{"platform":{"key1":"value1","key2":"value2","key3":"value3"}}};
Object.keys(obj).forEach(k=>obj[k]=obj[k].platform);
console.log(obj);

【讨论】:

    猜你喜欢
    • 2022-12-01
    • 2018-10-01
    • 2022-12-01
    • 2022-12-01
    • 2022-12-02
    • 2022-12-28
    • 2023-02-03
    • 2019-01-08
    • 1970-01-01
    相关资源
    最近更新 更多