@crazyjs

Наследование JavaScript?

Есть 2 объекта:
var f = { p: 1, t: 2, c 3 } 
  , s = { greet : function() {} };

Необходимо создать новый так, чтоб свойства объекта f стали внутренними свойствами this, а s его прототипом.

Как вариант - использовал
s.constructor = function() {
  for( var k in f ) this[k] = f[k]; 
 return this;
}
Object.create( s ).constructor();

Может есть вариант без перебора?
  • Вопрос задан
  • 2336 просмотров
Решения вопроса 1
aen
@aen
Keep calm and 'use strict';
Любопытства ради посмотрите исходники метода extend из underscore.js/lodash.js или jquery. Там используется точно такой же перебор, потому что иного способа нет.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы