我有一个 json 字符串,我会解析它,然后使用点符号访问对象的属性。然而,在 google 闭包编译器中,点符号 (MyObject.PropertyName
) 给出该属性未定义的警告。
目前,我使用的解决方案是将我的代码转换为括号表示法(MyObject['PropertyName']
)。这会消除警告,但也会阻止编译器完成其工作。另一方面,当我写JSON.stringify(MyObject)
,服务器收到一个带有可理解的属性名称的字符串。
所以我的问题是,在处理运行时反序列化和序列化的 json 对象时,如何在高级模式下最好地使用 google 编译器。
你基本上有两个选择:
- 使用字符串文字(又名
MyJsonObject['PropertyName']
)这是简单的解决方案。
- 创建一个外部文件来描述 JSON 对象中的属性,然后使用点表示法(又名
MyJsonObject.PropertyName
)。这需要更多维护,但如果您在外部描述中提供类型注释,则允许编译器对属性进行类型检查。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)