Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Удаления объекта "изнутри" (https://javascript.ru/forum/misc/54659-udaleniya-obekta-iznutri.html)

Relgon 26.03.2015 17:10

Удаления объекта "изнутри"
 
Доброе время суток,уважаемые посетители форума!
В процессе изучения Js возник след. вопрос.
Можно ли полностью удалить объект ("класс") вызовом функции из этого же объекта?То есть,как исправить след. кусок кода?
function Class(a,b){
            this.A=a;
            this.B=b;
            this.check=function(){
                if (this.A==this.B)
                    delete this //???
            }
        }
Cl=new Class(1,2);
ClDell=new Class(1,1);
ClDell.check();
alert(ClDell.A) //undefined?? ClDell полностью удалилен из памяти.

PS:Гугл ничего адекватного не нашел.

nerv_ 26.03.2015 17:14

Цитата:

Сообщение от Relgon
полностью удалилен из памяти

почитай про "сборщик мусора"

newuser1001 26.03.2015 17:27

function Class(name, a,b){
            window[name]=this
            this.A=a;
            this.B=b;
            this.check=function(){
                if (this.A==this.B)
                    delete window[name] //???
            }
        }
new Class("Cl", 1,2);
new Class("ClDell", 1,1);
alert(ClDell.A) 
ClDell.check();
try{alert(ClDell.A)}catch(e){alert(e)}

ЗЫ только он будет удален, если на него нет других ссылок.

Relgon 26.03.2015 17:34

Всем спасибо за ответы,разобрался)


Часовой пояс GMT +3, время: 10:54.