Javascript область действия addEventListener и это

Я - разработчик C #, экспериментирующий с JavaScript, и я пытаюсь обдумать возможности :)

У меня есть следующий код, который содержитaddEventListener в котором я хочу использовать поле из моего объекта:

(function(window) {

    function Keyboard() {
        this.keys = {};
    }

    Keyboard.prototype.handle_keydown = function(args) {
        this.keys[args.keyCode] = true;
    }

    Keyboard.prototype.listen = function() {
        window.addEventListener('keydown', this.handle_keydown);
    }

    app.util.keyboard = new Keyboard();

})(window);

Я хотел бы использовать массив ключей в моем Hander, но понимаю, что я не могу получить доступ с помощью этого, потому что это окно в этом контексте (правильно?). Если я изменю это на

app.util.keyboard.keys[args.keyCode] = true;

это работает, но я не уверен, что это хороший способ это исправить.

я нашелэтот вопрос, что кажется довольно похожим, но я не уверен, как я могу вписать это в мой пример.

Спасибо за вашу помощь!

Ответы на вопрос(3)

Ваш ответ на вопрос