在对象内部访问 属性 时不能使用 ${}

Cannot use ${}while accessing a property inside an object

所以我正在尝试访问这样命名的 属性

let lang = organizationLocales[0].locale; 

alertDetails.alertMessage.`${lang}`.all

但遗憾的是,我在那个美元符号附近收到一个错误,说“需要标识符”,我只想以动态方式访问 属性,因为变量 lang 会根据用户输入。如果有任何帮助,我将不胜感激。

P.S organizationLocales 是一个数组,与 alertDetails 对象无关。

您可以通过索引访问器 [] 访问对象的 属性。因此,如果您想使用字符串来寻址 属性,则应将此类字符串括在方括号内。

你必须把它想象成一个关联数组,其中每个 属性 名称都与其值配对,包括函数。由于在 js 语法中,点需要静态定义的 属性 名称,因此您不能组成这样的标识符。但是你可以使用不同的方式到达那里而不依赖点。

为了更好地回答您的具体问题,这可能是解决方案:

let lang = organizationLocales[0].locale; 

alertDetails.alertMessage[lang].all