Есть след код, меня интересует, происходит ли в этом случае экономия памяти?
var Person = {
getName: function(){
return this.name;
},
bigMethod: function(){
// here some large code
}
};
var createPerson = function(obj){
var person = {};
person.getName = function(){
return Person.getName.call(obj);
};
person.bigMethod =function(){
return Person.bigMethod.call(obj);
};
return person;
}
var persons = [];
for (var i =0; i < 1000; i++){
persons.push(createPerson({name:'Gregory'}));
}
или же в принципе можно делать так:
var createPerson = function(obj){
var person = {};
person.getName = function(){
return obj.name;
};
person.bigMethod = function(){
// here some large code
};
return person;
}
var persons = [];
for (var i =0; i < 1000; i++){
persons.push(createPerson({name:'Gregory'}));
}
в первом случае я выделил реализацию некого гипотетического метода с длинным кодом в отдельный объект Person и вызываю его из createPerson. а во втором я просто создаю объект с нужными методами и возращаю объект.
так проверил с помощью профайлера Google Chrome результаты след и в 1-м и во 2-м случае размер памяти примерно одинаковый у меня это ~25 Mb на 100,000 объектов, а вот в случае прототипа значительно меншье ~6 Mb.
Думаю в моем случае, выноса реализации в отдельный метод, оптимизатор вызвращает обратно его в тело )) таким образом оптимизируя код, надо попробовать написать реальный большой метод по объему, и его тестировать.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
I use Google+ Login in my Wep App (Google Sign In)In browser like Chrome or Safari working fine (opens popup in new tab with chose account (enter login, passwd), then popup closed and auth successfull
Приветствую! Большая просьба помочь, пытаюсь сделать судоку(похожее на это maworldcom
как вычислить отрицательную степень рекурсией в js?