Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы (http://www.flasher.ru/forum/forumdisplay.php?f=10)
-   -   Удаление объектом самого себя (http://www.flasher.ru/forum/showthread.php?t=47005)

Пушистик 23.07.2003 22:29

хех....ну попробуй сделай прототип....и ничего уже не выдет...
ты не прав....если я делаю прототип метод для класса внутри класса то он не буит работать...
ну а если прототип, то снаружи....так что у меня все ок!:)

снаружи:
Код:

function adminLang() {
    return this.lang.split(",");
}
function ADMINISTRATOR(a_name, a_rank, a_status, a_lang, a_bann, A_UID) {
    this.name = a_name;
    this.rank = a_rank;
    this.status = a_status;
    this.lang = a_lang;
    this.bann = a_bann;
    this.UID = A_UID;
    this.adminLang = adminLang;
}
ADMINISTRATOR.prototype.deleteAdmin = function(id) {
    trace("Админ "+this.name+" удален!");
    if (id == this.UID) {
        this.name = undefined;
        this.rank = undefined;
        this.status = undefined;
        this.lang = undefined;
        this.bann = undefined;
        this.UID = undefined;
    }
};
man = new ADMINISTRATOR("Push", "Angry Admin", "bum", "ru", "yes", 8937743);
trace("Cтатус: "+man.status);
man.deleteAdmin(8937743);
trace("Cтатус: "+man.status);

можно вот так.....но разницы никакой нету....

Techmaker 23.07.2003 22:52

Цитата:

хех....ну попробуй сделай прототип....и ничего уже не выдет...
ты не прав....если я делаю прототип метод для класса внутри класса то он не буит работать...
а кто сказал что прототип должен быть внутри - это эже будит ошибка адрессации! :)
Цитата:

можно вот так.....но разницы никакой нету....
про разницу тебе уже рассказал уважаемый забор :)

llllllllll 24.07.2003 14:26

Ну в силу некоторых особенностей AS выглядеть это должно примерно так:

function Class(name,space){
this.name = name;
this.space = space;
}
Class.prototype.kill = function(){
delete this.space[this.name];
}

instance = new Class("instance",this);
instance.kill();

... да еще, Пушистику, заметь, что ты не удаляешь объект, а лишь обнуляешь его свойства, причем не очень то изящным способом :)

Пушистик 24.07.2003 22:39

хех....
 
дак я же сразу сказал, что удалять не нуна....если нуна, то зафига тогда какие то id????этот класс должен сущестововать.....по его смыслу....ведь админов может быть нескольно....
обнуляю свойства....да! но можно удалить переменные, если кому хоЦЦа....


Часовой пояс GMT +4, время: 15:49.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.