Ez egy példa arra, miért nem lehet ClassA konstruktor függvényt egyszerűen meghívni (nézd a forráskódot).
Ebben az esetben nem jön létre "closure", így ClassA függvény nem látja a ClassB this tulajdonságát.
A ClassA meghívásakor egy új futási környezet jön létre, aminek a [[scope]] tulajdonsága
megkapja a globális futási környezet láthatósági listáját
(Minden egyes függvény objektum rendelkezik egy [[scope]] nevű belső tulajdonsággal,
mely az objektum létrehozásakor kap értéket attól függően, hogy az milyen környezetben jön létre.
A function kulcsszóval definiált függvények esetében az őket létrehozó futási környezet láthatósági listája (scope chain) kerül bele.
).
Mikor a this azonosító feloldásra kerül a ClassA végrehajtásakor,
a globális futási környezet láthatósági listájában kerül megtalálásra.
A this globális változó a legtöbb böngészőtípusban (Internet Explorer és Opera
böngészőkben teszteltem) referenciát tartalmaz a window objektumra vagy a globális objektumot
(A globális objektum a globális futási környezetbe való belépés előtt keletkezik, és tuljdonságokként tartalmazza az összes beépített objektumot,
függvényeket, valamint a befogadó környezet által nyújtott objektumokat.) tartalmazza.
A futási környezetről és az azonosítók feloldásáról további információk találhatók Hodicska Gergely
"Objektum orientált JavaScript programozás a felszín alatt" című írásában a
Weblabor oldalán.
A ClassA meghívásakor egy új futási környezet jön létre, aminek a [[scope]] tulajdonsága megkapja a globális futási környezet láthatósági listáját
Mikor a this azonosító feloldásra kerül a ClassA végrehajtásakor, a globális futási környezet láthatósági listájában kerül megtalálásra. A this globális változó a legtöbb böngészőtípusban (Internet Explorer és Opera böngészőkben teszteltem) referenciát tartalmaz a window objektumra vagy a globális objektumot (A globális objektum a globális futási környezetbe való belépés előtt keletkezik, és tuljdonságokként tartalmazza az összes beépített objektumot, függvényeket, valamint a befogadó környezet által nyújtott objektumokat.) tartalmazza.(Minden egyes függvény objektum rendelkezik egy [[scope]] nevű belső tulajdonsággal, mely az objektum létrehozásakor kap értéket attól függően, hogy az milyen környezetben jön létre. A function kulcsszóval definiált függvények esetében az őket létrehozó futási környezet láthatósági listája (scope chain) kerül bele. ).
A futási környezetről és az azonosítók feloldásáról további információk találhatók Hodicska Gergely "Objektum orientált JavaScript programozás a felszín alatt" című írásában a Weblabor oldalán.