Показать сообщение отдельно
  #4 (permalink)  
Старый 08.10.2012, 14:46
Аспирант
Отправить личное сообщение для bFree Посмотреть профиль Найти все сообщения от bFree
 
Регистрация: 19.08.2008
Сообщений: 42

Спасибо за наводку!
Появились вопросы:
Почему лучше использовать alert (кроме того, что он прерывает работу скрипта)?

Почему лучше использовать Class ? Все, что я читал про наследование в JS сводилось к тому, что незачем пытаться эмулировать классы, как в других ЯП, а лучше использовать прототипы, ибо для этого язык и задуман.


Также, к сожалению, код работать не начал =(
// Базовый объект
            var Foo = new Class(function(options) {
                this.__construct__ = function(options) {
                    this.setOptions(options);
                };

                this.defaultOptions = {
                    some_option: null
                };

                this.setOptions = function(options) {
                    this.options = jQuery.extend(true, this.defaultOptions, options);
                };
            });

            // Наследник
            var Bar = new Class(Foo, function(options) {
                this.defaultOptions = {
                    some_option   : null,
                    another_option: false
                }
            });

            var objs = [];

            // Создадим несолько объектов
            for(var i = 0; i < 4; i++) {
                objs.push(new Bar({
                    some_option: i,
                    another_option: true
                }));
            }

            console.log(objs[1].options); // some_option = 3  (почему!?)
            console.log(objs[3].options); // some_option = 3 (так и должно быть)

Последний раз редактировалось bFree, 08.10.2012 в 14:56.
Ответить с цитированием