重命名 Javascript 对象中所有属性名称的最快方法是什么?

The*_*ner -2 javascript object

比如说,我有一个看起来像这样的对象:

const a = {
  prop1: "val1",
  prop2: "val2",
  prop3: "val3",
  prop4: "val4",
}
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西a

const b = {
   something_prop1: "val1",
   something_prop2: "val2",
   something_prop3: "val3",
   something_prop4: "val4",
}
Run Code Online (Sandbox Code Playgroud)

有没有什么方法可以实现这一点,而无需创建中间的键数组或运行fororforeach循环?

Nin*_*olz 5

Object.assign您可以映射新对象并​​使用扩展语法...构建单个对象。

const
    a = { prop1: "val1", prop2: "val2", prop3: "val3", prop4: "val4" },
    b = Object.assign(...Object.entries(a).map(([k, v]) => ({ ['something_' + k]: v })));

console.log(b);
Run Code Online (Sandbox Code Playgroud)