https://gist.github.com/Integralist/5736427Как создать свойства для шаблона проектирования стратегии в javascript?
Эта часть кода по приведенной выше ссылке дает мне проблемы. фона: бег в расширении хромированного под «использовать жесткое» условие
var Greeter = function(strategy) {
this.strategy = strategy;
};
// Greeter provides a greet function that is going to
// greet people using the Strategy passed to the constructor.
Greeter.prototype.greet = function() {
return this.strategy();
};
Я думаю, что нужно создать свойство «приветствовать», но не знает, как.
Я получаю ошибку о том, «не может установить свойство„поздороваться“неопределенным»
Как я могу создать свойство приветствие и получить код для работы?
Спасибо!
ОБНОВЛЕНИЕ это, как мой код в моем расширения
var MessageHandling = new function(strategy) {
this.strategy = strategy;
};
MessageHandling.prototype.greet = function() {
return this.strategy();
};
//Later
var openMessage = new MessageHandling(openMessageAnimationStrategy);
openMessage.greet();
Если вы не используете это расширение и попробуйте его в строгом режиме в другом месте, дает ли он одинаковые результаты? Я не могу воспроизвести, но опять же я не использую то, что вы используете. –
Вы делаете 'var g = новый Greeter (someStrategy);' и затем 'g.greet();'? Вам, вероятно, придется показать нам код, который использует код в вашем вопросе. – jfriend00
Да, я использую var g = new Greeter (someStrategy); и затем g.greet(); – Siddartha