Daa*_*aan 1 javascript json eval hashtag
我目前正在开发一个JavaScript加载项,它从API接收JSON.到目前为止,我很好地检索JSON然后用于eval()将此JSON转换为JavaScript对象.这就是问题的起点.
我的JSON包含'#text'属性.我评估了JavaScript对象并发现它也有这个'#text'属性,但我无法调用该属性,因为不接受带有hash-tags的变量.
我知道两种可能的解决方案(用于eval()转换为数组或删除hast-tag),但我更喜欢调用该属性.有任何想法吗?谢谢.
您可以使用方括号引用对象属性:
var obj = {'#foo': 'bar'};
obj['#foo']; // 'bar'
Run Code Online (Sandbox Code Playgroud)
确实,obj.#foo无效(即会引发语法错误),但上面的方法很好.
此外,除非必须,否则不要使用eval.尽管是一个较慢的解决方案,但它不太安全,特别是考虑到通常有如此多的本机JSON方法,并且大多数JSON库仅在本机方法不存在时才会引入该功能.
| 归档时间: |
|
| 查看次数: |
4000 次 |
| 最近记录: |