Показать сообщение отдельно
  #5 (permalink)  
Старый 13.07.2013, 17:15
Новичок на форуме
Отправить личное сообщение для krantadan Посмотреть профиль Найти все сообщения от krantadan
 
Регистрация: 13.07.2013
Сообщений: 5

Сообщение от 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 () {} };

Последний раз редактировалось krantadan, 13.07.2013 в 17:17.
Ответить с цитированием