如何在Object JS中更改密钥?

时间:2019-06-17 17:44:33

标签: javascript

我需要更改数组中所有对象的键。

const arr = [
{
"Title" : 'test',
"Format" : "BLA-BLA",
"Start Year" : '2012',
"Stars" : []
},
{
"Title" : 'test2',
"Format" : "BLA-BLA2",
"Start Year" : '2032',
"Stars" : []
}
]

我需要将“标题”更改为“名称”,将“格式”更改为“格式”,将“开始年份”更改为“年份”,将“星星”更改为“演员”

怎么可能? 谢谢!

4 个答案:

答案 0 :(得分:0)

尝试使用地图,希望对您有所帮助,

const arr = [
  {
    Title: 'test',
    Format: 'BLA-BLA',
    'Start Year': '2012',
    Stars: []
  },
  {
    Title: 'test2',
    Format: 'BLA-BLA2',
    'Start Year': '2032',
    Stars: []
  }
];


const res = arr.map(obj => {
  const title = obj.Title;
  const format = obj.Format;
  const year = obj['Start Year'];
  const starts = obj.Stars;
  return {
    name: title,
    format,
    year,
    actors: starts
  };
});

console.log(res);

答案 1 :(得分:0)

只需使用.map

const arr = [{
    "Title": "test",
    "Format": "BLA-BLA",
    "Start Year": "2012",
    "Stars": []
},
{
    "Title": "test2",
    "Format": "BLA-BLA2",
    "Start Year": "2032",
    "Stars": []
}
];

const result = arr.map((item) => {
return {
    name: item.Title,
    format: item.Format,
    year: item["Start Year"],
    actors: item.Stars
};
});

console.log(result);

答案 2 :(得分:0)

使用map()方法遍历数组的内容,然后可以将值从obj复制到返回objArr中的新键名。

let arr = [
{
"Title" : 'test',
"Format" : "BLA-BLA",
"Start Year" : '2012',
"Stars" : []
},
{
"Title" : 'test2',
"Format" : "BLA-BLA2",
"Start Year" : '2032',
"Stars" : []
}
]

arrayObj = arr.map(obj => {
  var objArr = {}
  objArr['name'] = obj.Title;
  objArr['format'] = obj.Format;
  objArr['year'] = obj['Start Year'];
  objArr['actors'] = obj.Stars;
  return objArr;
});


console.log(arrayObj);

答案 3 :(得分:-2)

您可以创建一个heroku.yml并遍历数据并更改密钥

keyMapper