以下代码中存在语法错误:
<!DOCTYPE html>
<html>
<body>
Hello World!
<script type="text/javascript">
var obj = {'a:b': '1'};
alert(obj.a:b); // syntax error
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
那么如何使用键名中的冒号处理JavaScript对象?
我必须这样做,因为我需要从一个我无法控制的远程服务器处理jsonp格式的feed,并且返回的jsonp的键名中有冒号(因为jsonp是从具有名称空间的XML转换而来的)标签).
访问它们:
obj['a:b']
括号是同义词,.除了它们接受字符串(包括变量!)
所以obj.x== obj['x'],如果你有一个变量,foo = 'x'那么obj[foo]也是相等的.
但是,不要让语法欺骗你.它可能看起来像数组访问的语法,但它实际上是从对象访问属性的另一种方式.
| 归档时间: |
|
| 查看次数: |
674 次 |
| 最近记录: |