Это простой вопрос. В любом случае. Я предпочитаю, чтобы мой первый пример, но я не знаю, если делать это таким образом, вызывает больше памяти будет выделена, чем во втором примере, так как мы называем «новыми» на объекте ....javascript: отдельная функция для методов или встроенных в объект?
Пример 1
var post = function(){
var self = this;
self.div = $('<div></div>');
self.color = function(color){
this.div.css({background:color});
}
}
var p = new post();
p.color("#FFF");
Пример 2
var post = function(){
self = this;
self.div = $('<div></div>');
}
var color = function(p, color){
p.div.css({background:color});
}
var p = new post();
color(p, "#FFF");
Так, в первом примере, функция цвета я считаю, будет получать воссозданы каждый новый пост называется. Что делать, если у меня есть 100 new post();
звонков. Является менее эффективным, чем в примере 2, где функция определяется только один раз?
Имеет ли смысл то, что я прошу?
Это так прототипно из вас. Хорошее объяснение и решение, +1. – bernie
Как появился атрибут «prototype» в «Post»? Почему нам не нужно что-то вроде Post.prototype = {}; прежде чем мы сможем его использовать? (никто этого не делает, мне просто интересно, как это работает) –
@ Danny Milosavljevic: http://es5.github.com/#x13.2, step 18. – pimvdb