[whatwg] Should window.name be [Replaceable]?

Joseph Pecoraro pecoraro at apple.com
Sun Jul 4 21:05:49 PDT 2010


Should window.name be [Replaceable]?

There are a number of "[Replaceable]" [1] properties on the window
object. However, "window.name" is not marked as such [2]. Not being
marked as replaceable means that if authors use a global variable
named "name" it will be coerced into a string. For many this causes
confusion. It seems some browsers have opted to make it replaceable.

Test case. You can test your browser at [3].

    (function() {
        var arr = [];
        arr.push( typeof window.name );
        window.name = 1;
        arr.push( typeof window.name );
        name = 1;
         // "number" if [Replaceable], "string" otherwise
        arr.push( typeof window.name );
        alert( arr );
    })();

Browser Results:

    - Safari 5 / WebKit Nightly and Chrome 5
      NOT [Replaceable], printing "string,string,string" 
    
    - Firefox 3.6.3 / 3.7a5 and Opera 10.5.3 / 10.6
      [Replaceable], printing  "string,string,number"

    - I didn't have access to IE to test. I'd appreciate
      someone giving it a shot to see how they act.

Has there been discussion on this in the past? I searched and
didn't find any discussion.

- Joe

[1]: http://dev.w3.org/2006/webapi/WebIDL/#Replaceable
[2]: http://www.whatwg.org/specs/web-apps/current-work/multipage/browsers.html#the-window-object
[3]: https://bug-19967-attachments.webkit.org/attachment.cgi?id=60491




More information about the whatwg mailing list