在对象内部访问 属性 时不能使用 ${}
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
所以我正在尝试访问这样命名的 属性
let lang = organizationLocales[0].locale;
alertDetails.alertMessage.`${lang}`.all
但遗憾的是,我在那个美元符号附近收到一个错误,说“需要标识符”,我只想以动态方式访问 属性,因为变量 lang 会根据用户输入。如果有任何帮助,我将不胜感激。
P.S organizationLocales 是一个数组,与 alertDetails 对象无关。
您可以通过索引访问器 []
访问对象的 属性。因此,如果您想使用字符串来寻址 属性,则应将此类字符串括在方括号内。
你必须把它想象成一个关联数组,其中每个 属性 名称都与其值配对,包括函数。由于在 js 语法中,点需要静态定义的 属性 名称,因此您不能组成这样的标识符。但是你可以使用不同的方式到达那里而不依赖点。
为了更好地回答您的具体问题,这可能是解决方案:
let lang = organizationLocales[0].locale;
alertDetails.alertMessage[lang].all