我想将小写字母转换为大写字母。但是找不到我的尝试。
什么是正确的方法?
这是我的尝试:
var obj = {
name: "new name",
age: 33
}
const x = Object.assign({}, obj);
for (const [key, value] of Object.entries(x)) {
key = key.toUpperCase();
}
console.log(x);
答案 0 :(得分:4)
使用
key = key.toUpperCase();
重新分配变量几乎永远不会做任何事情(即使key
是可重新分配的)-您需要显式地更改现有对象:
var obj = {
name: "new name",
age: 33
}
const x = {};
for (const [key, value] of Object.entries(obj)) {
x[key.toUpperCase()] = value;
}
console.log(x);
您还可以使用reduce
来避免x
的外部突变:
var obj = {
name: "new name",
age: 33
}
const x = Object.entries(obj).reduce((a, [key, value]) => {
a[key.toUpperCase()] = value;
return a;
}, {});
console.log(x);