传递当前对象键

时间:2018-04-11 01:19:42

标签: javascript

有没有办法将对象的当前键作为参数传递给作为其值执行的方法?例如:

VersionOne: {
     welcomeMessage: this.localization.get(this.currentKey(?))
},
VersionTwo: {
    welcomeMessage: this.localization.get(this.currentKey(?))
}

我知道我可以手动写出密钥,但对于长密钥,我不想复制它们。

1 个答案:

答案 0 :(得分:1)

在定义对象之前无法执行此操作,但您可以稍后通过分配代码来保持代码干净:

const versions = {};
['VersionOne', 'VersionTwo'].forEach((version) => {
  versions[version] = {
    welcomeMessage: () => console.log(version),
  };
});
versions.VersionTwo.welcomeMessage();