Ye olde arguments argument (was: Topic list - pending changes and issues for the ES3.1 spec)

Brendan Eich brendan at mozilla.org
Thu Sep 11 14:50:44 PDT 2008


On Sep 11, 2008, at 1:09 PM, liorean wrote:

>> On Sep 11, 2008, at 12:56 PM, liorean wrote:
>>> Does not quite work on the current web - JScript binds the "bar"  
>>> name
>>> in the containing scope, not the contained scope as ES3 specs it.  
>>> That
>>> means the inner name isn't really usable for recursion unless the
>>> script author actually makes sure it stays unmodified in the
>>> containing scope.
>
> 2008/9/11 Brendan Eich <brendan at mozilla.org>:
>> Is this bug (which I should have remembered, since I called it out  
>> on LtU
>> recently) fixed in IE8?
>
>     var
>         f=function fn(){return fn;},
>         fn=null;
>     f(); // => null
>
> Seems to not have been fixed in ie8b2 / JScript5.8.

Heavy sigh.

This is why arguments.callee is used all over the web. Mark, suggest  
you keep it in strict mode if you want strict mode to see use with  
Prototype, etc.


>> Not that it helps the IE7 and even 6 cohorts out there.
>
> And we're likely to have to deal with those for a long time still...

I'm sure, although other browsers promote and push new versions  
better. It's the wave of the future (ignoring debian-stable and the  
likes).

/be


More information about the Es-discuss mailing list