JavaScript:如何重命名对象中的所有键(在第一级处理所有键)?

Jan*_*cke 3 javascript

我想为对象中的第一级键添加前缀。

为了减少歧义,我希望能够展示 Python 中的字典理解如何是实现这一目标的优雅方法(我正在寻找 JavaScript 中的类似方法):

>>> old = {"a": 1, "b": 2}
>>> prefix = "_"
>>> new = {prefix + key: value for key, value in old.items()}
>>> new
{'_a': 1, '_b': 2}
Run Code Online (Sandbox Code Playgroud)

在现代 JavaScript 中,有什么同样优雅且特别可读的方法可以实现这一点,并且最好在 NodeJS 12 中使用?

Ori*_*ori 6

通过将对象转换为条目Object.entries()。迭代条目并Array.map()更新密钥。使用以下命令将条目转换为对象Object.fromEntries()

const old = {"a": 1, "b": 2}
const prefix = "_"

const result = Object.fromEntries(
  Object.entries(old).map(([k, v]) => [`${prefix}${k}`, v])
)

console.log(result)
Run Code Online (Sandbox Code Playgroud)