Browser support for using a reserved word as a property name in JavaScript

后端 未结 4 1041
一个人的身影
一个人的身影 2020-11-30 09:06

I\'m trying to use \"for\" as an object property name. It seems to work fine in IE7, IE8, Firefox, Chrome and Opera, but apparently not in Safari.

My understanding

4条回答
  •  情深已故
    2020-11-30 09:37

    You can use those words, but only as strings and not shorthand properties.

    foo['class']; // cool
    foo.class;    // not cool
    

    But here is the actual list you requested. None of these can be used via property dot syntax. https://web.archive.org/web/20140902235313/http://javascript.about.com/library/blreserved.htm


    Also, only slightly tangential, CoffeeScript notices this and auto stringifies them for you. http://jashkenas.github.com/coffee-script/#literals

    Input:

    $('.account').attr class: 'active'
    log object.class
    

    JS Ouptput:

    $('.account').attr({
      "class": 'active'
    });
    log(object["class"]);
    

    I happen to think that is pretty dang neat.

提交回复
热议问题