我有这个对象数组:
var materials=[{sample:"A21"},{sample:"A22"},{sample:"A23"}];
目标是创建一个新数组,用相应的值替换“sample”名称...
结果:var materials2=[{A21:"A21"},{A22:"A22"},{A23:"A23"}];
这可能吗?
我已经尝试在下面的循环中将 key 作为字符串传递,但没有任何运气!
for(i=0; i<materials.length; i++){
materials2.push({"'"+materials[i].sample+"'":materials[i].sample})
}
任何帮助将不胜感激! 谢谢!
最佳答案
您可以使用 computed property name 映射该值.
var materials = [{ sample: "A21" }, { sample: "A22" }, { sample: "A23" }],
result = materials.map(({ sample }) => ({ [sample]: sample }));
console.log(result);
关于javascript - 我如何将对象键名称指定为与其值相同的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58690508/