Привет!
Я только недавно начал изучать JS и вот сегодня столкнулся с такой проблемой. Сижу над ней целый день, выручайте
<body>
<script>
Transformer = function() {
this.name = "Optimus";
};
Transformer.prototype.getName = function() {
return this.name;
};
Informer = function(transformer, rootObject) {
this.robot = transformer;
rootObject.innerHTML = '<input id="btn" type="button" value="Push"/>';
document.getElementById('btn').onclick = this.sayName;
};
Informer.prototype.sayName = function() {
alert(this.robot.getName());
};
var trans = new Transformer();
var inform = new Informer(trans, document.body);
</script>
</body>
Нужно, чтобы по нажатию на кнопку появлялся алерт с текстом "Optimus". Вместо этого получаю this.robot = unidentified по событию onclick. Предполагаю, что проблема кроется в областях видимости this, но хотелось бы ясности.