向对象动态添加属性



在Javascript中,我创建了一个这样的对象:

this.view.objectExample.accessibilityConfig= {
'propertyA': 1,
'PropertyB': 2,
'PropertyC': 3
};

我试图在运行时添加一个新属性,但得到了";无法设置未定义的"的属性;错误

使用的代码示例:

this.view.objectExample.accessibilityConfig.propertyD['flag'] = true;

设置这样的新房产的正确方法是什么?

也这样尝试过:

this.view.objectExample.accessibilityConfig.propertyD.flag = true;

因为原始对象中没有propertyD,所以accessibilityConfig.propertyD就是undefined

您可以动态地向对象添加属性,但该对象必须首先存在。对于对象层次结构的每个级别都是如此。所以在你能做到这一点之前:

this.view.objectExample.accessibilityConfig.propertyD.flag = true;

你必须这样做:

this.view.objectExample.accessibilityConfig.propertyD = {};

或者你可以同时做这两件事:

this.view.objectExample.accessibilityConfig.propertyD = { flag: true };

相关内容

  • 没有找到相关文章

最新更新