Я пытаюсь написать простой объект спрайт, который добавит себя на холст, когда он инициализируется:как ссылаться на переменную из родительского объекта в JavaScript
function Sprite(source){
this.x = 100;
this.y = 100;
this.img = new Image();
this.img.src = source;
this.img.onload = function(e){
context.drawImage(this.img, this.x, this.y);
};
}//end of object Sprite
Это не работает, как нужно DrawImage к доступ к переменным за пределами обработчика onload. Как я могу получить доступ к переменным внутри моего объекта Sprite изнутри обработчика событий?
К вы не должны полагаться на глобальный объект 'context'. Вы должны вводить контекстную зависимость в экземпляр «Sprite», если он должен сам рисовать. 'Sprite (source, context)' и использование 'this.context', это намного более гибко. – plalx