Global functions
Lars T Hansen
lth at acm.org
Thu Dec 13 23:42:54 PST 2007
I believe "let function" is broken in the RI (it has been in the past).
--lars
On Dec 14, 2007 4:41 AM, Michael O'Brien <mob at mbedthis.com> wrote:
> While this compiles in the RI, it still produces 2 and 2 for the output.
>
> ie. doesn't seem they are block scoped functions either.
>
> Michael
>
>
> John Resig wrote:
> > I was under the impression that for the function definitions to be confined to a block scope, you had to define them as such (with let function statements), like so:
> >
> > package {
> > {
> > let function fun() {
> > print("1");
> > }
> > fun()
> > }
> > {
> > let function fun() {
> > print("2")
> > }
> > fun()
> > }
> > }
> >
> > I'm unsure if this currently works in the RI, or not.
> >
> > --John
> >
> >
> > ----- Original Message -----
> > From: "Michael O'Brien" <mob at mbedthis.com>
> > To: "es4-discuss" <es4-discuss at mozilla.org>
> > Sent: Thursday, December 13, 2007 7:10:41 PM (GMT-0500) America/New_York
> > Subject: Global functions
> >
> > Are global functions declared with block or global scope. ie. declared
> > in the block object or var object?
> >
> > Consider:
> >
> > package {
> > {
> > function fun() {
> > print("1");
> > }
> > fun()
> > }
> > {
> > function fun() {
> > print("2")
> > }
> > fun()
> > }
> > }
> >
> >
> > This prints
> >
> > 2
> > 2
> >
> > in the RI.
> >
> > So should functions be treated like var declarations or as let
> > declarations. Seems like they are like vars in the RI.
> >
> > Is this right?
> >
> > Michael O'Brien
> >
> > _______________________________________________
> > Es4-discuss mailing list
> > Es4-discuss at mozilla.org
> > https://mail.mozilla.org/listinfo/es4-discuss
> >
> >
> >
> _______________________________________________
> Es4-discuss mailing list
> Es4-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es4-discuss
>
More information about the Es4-discuss
mailing list