how to handle JavaScript objects with colons in key names? - Stack Overflow

There is a syntax error in the following code:<!DOCTYPE html><html><body>Hello World

There is a syntax error in the following code:

<!DOCTYPE html>
<html>
  <body>
    Hello World!
    <script type="text/javascript">
        var obj = {'a:b': '1'};
        alert(obj.a:b); // syntax error
    </script>
  </body>
</html>

So how to handle JavaScript objects with colons in key names?

I have to do this because I need to handle a feed in jsonp format from a remote server which I do not have control over, and there are colons in the key names of the returned jsonp (because the jsonp is converted from XML with namespaces in tags).

There is a syntax error in the following code:

<!DOCTYPE html>
<html>
  <body>
    Hello World!
    <script type="text/javascript">
        var obj = {'a:b': '1'};
        alert(obj.a:b); // syntax error
    </script>
  </body>
</html>

So how to handle JavaScript objects with colons in key names?

I have to do this because I need to handle a feed in jsonp format from a remote server which I do not have control over, and there are colons in the key names of the returned jsonp (because the jsonp is converted from XML with namespaces in tags).

Share Improve this question edited Jun 5, 2010 at 19:34 Thanatos 44.4k17 gold badges96 silver badges152 bronze badges asked Jun 5, 2010 at 19:07 EthanEthan 18.9k16 gold badges53 silver badges74 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 9

Access them with:

obj['a:b']

The brackets are synonymous with . except they accept strings (including variables!)

So obj.x == obj['x'], and if you had a variable foo = 'x' then obj[foo] would also be equal.

Don't let the syntax fool you, though. It may look like syntax for array access, but it is actually another way to access properties from objects.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745276144a4620053.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信