Сообщение от nerv_
|
т.о. для того, чтобы сложить три числа, тебе надо вручную построить три объекта. Аналогично и со строками. Не бред ли?
|
Не понял мысль. Числа - элементарный тип. При их сложении вообще не вызываются какие-либо конструкторы.
Сообщение от nerv_
|
это встроено в язык - прототипы
|
Нет, не встроено. Прототип - это в первую очередь средство решения архитектурных задач, а не оптимизации.
Например, если вам надо сделать цепочку наследований, такого плана:
{
a: function () {},
__proto__: {
b: function () {},
__proto__: {
c: function () {}
}
}
}
То вы не сможете решить прототипами задачу оптимизации, так как прототип уже использован под наследование:
function A() { this.a = function () {}; }
A.prototype = new B(); // Сюда не получится запихнуть реализацию метода a.
function B() { this.b = function() {}; }
B.prototype = { c: function () {} };