В чем разница между _.extend (Something.prototype, someObj) и Something.prototype.someFunc = someFunc?
Я попадаю в реальное объектно-ориентированное программирование с использованием JavaScript и столкнулся с двумя различными способами расширения прототипа существующего объекта.
Способ первый:
Something.prototype.someFunc = function() {
// To something usefull
}
Метод два (используя underscore.js):
_.extend(Something.prototype, {
someFunc: function() {
// Do the same but differently
}
}
В чем разница между этими двумя подходами? Какой из них считается "лучше"? Мне кажется, что первый метод лучше, потому что он использует старый добрый javascript, а второй метод - чья-то реализация. Но с другой стороны, разработчики underscore.js наверняка не добавили метод _.extend () даром?