这种格式的大约 5 个或更多 javascript 对象的数组[{'a':'man', 'age':'35'},{'b':'woman', 'age':'30'}]需要转换为[{gender:'man','age':'35'},{gender:'woman','age':'30'}].
什么是有效的方法?
编辑
此外,输入数组可能是这样的,其中键是切换的:
[{'a':'man', 'age':'35'},{'age':'30', 'b':'woman'}]其中 a、b、... 可以是任何东西,数组中的对象最多可以有 10 个对象。
您可以迭代数组并迭代键并仅将未知键更改为gender.
var data = [{ a: 'man', age: '35' }, { b: 'woman', age: '30' }];
data.forEach(function (o) {
Object.keys(o).forEach(function (k) {
if (k !== 'age') {
o.gender = o[k];
delete o[k];
}
});
});
console.log(data);Run Code Online (Sandbox Code Playgroud)
您可以遍历原始数组并将您拥有的字段映射到您需要的字段:
var array=[{'a':'man', 'age':'35'},{'b':'woman', 'age':'30'}];
var newArray = array.map(function(item){
return {
age: item.age,
gender: item.a || item.b
};
});
console.log(newArray);Run Code Online (Sandbox Code Playgroud)