Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 14.03.2013, 01:04
Аспирант
Отправить личное сообщение для jsgeek Посмотреть профиль Найти все сообщения от jsgeek
 
Регистрация: 13.02.2013
Сообщений: 34

dmitriymar, я это и имел в виду, просто для ясности происходящего упростил
Ответить с цитированием
  #12 (permalink)  
Старый 14.03.2013, 01:11
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

что-то вот такое хочется )))
function Obj(name,age){
    this.name = name;
    this.age = age;
    return  Obj
   };

function Obj2(pr,name,age){
    this.base = Obj.call(this, name, age);
    this.property = pr;
}

var newOb = new Obj2('Cool','Alexej',22);

alert(newOb['name']) //выведет Alexej
newOb['base']('test',5)
alert(newOb['name'])
Ответить с цитированием
  #13 (permalink)  
Старый 14.03.2013, 01:19
Аспирант
Отправить личное сообщение для jsgeek Посмотреть профиль Найти все сообщения от jsgeek
 
Регистрация: 13.02.2013
Сообщений: 34

рони, ну да return в Obj помогает достичь желаемого в данном контексте.
Но:
var o1 = new Obj('test', 11)

сделает o1 еще одним конструктором...
Вообщем нужно использовать прототипы

Или на крайняк заменить в конструкторе
return Obj
на
if (!(this instanceof Obj)) {
        return  Obj;
    }
Но я бы не советовал что-то подобное делать в конструкторе, т.к. он не для таких манипуляций предназначен.

Последний раз редактировалось jsgeek, 14.03.2013 в 10:48.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работает CKEditor? ololosh Общие вопросы Javascript 9 20.12.2012 17:50
не работает скрипт как ссылка Abraham jQuery 31 14.06.2011 03:04
подскажите как работает setTimeout ruslan368560 Общие вопросы Javascript 1 17.05.2011 18:48
InnerHTML почему-то работает не так, как хотелось бы. помогите Dima00782 Общие вопросы Javascript 2 13.06.2010 21:17
Как работает обработчик onMouseMove() bayah Общие вопросы Javascript 3 29.04.2010 14:36