我在这里不知所措。有人能解释一下下面的控制台输出是如何实现的吗?为什么是
label_multilanguage_key
迭代时不显示
for var p in
?
> Object.getOwnPropertyNames(design_element)
(6) ["label_multilanguage_key", "value", "display_priority", "name", "help_text", "hidden"]
> for (var p in design_element) console.log(p);
VM226:1 value_type
VM226:1 element_type
VM226:1 requirement_setting
VM226:1 multiple_values_setting
VM226:1 user_enabled_setting
VM226:1 grid_size_setting
VM226:1 show_to_users
VM226:1 disable_label
undefined
> console.log(design_element)
VM262:1
{label_multilanguage_key: "&&mlkey_enable_filtering_for_id", value: false, display_priority: 6, name: "enable_filtering_for_id", help_text: "&&mlkey_proto_enable_filtering_help_text", â¦}
display_priority: 6
help_text: "&&mlkey_proto_enable_filtering_help_text"
hidden: true
label_multilanguage_key: "&&mlkey_enable_filtering_for_id"
name: "enable_filtering_for_id"
value: false
__proto__: Object
typeof(design_element)
"object"
回复:关于如何创建这些对象的问题-需要更长时间来确认,但是
应该
使用类似呼叫创建
Object.create(element_structure.StaticTextField,{label_multilanguage_key:{value:ML_KEYS.first_name},name:{value:"first_name"}})
如果是这样的话,不可枚举的行为是可能的吗?或者在对象初始化过程中是否有明显的错误?