最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

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

programmeradmin0浏览0评论

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.

发布评论

评论列表(0)

  1. 暂无评论