Понимание вызовов методов-прототипов - PullRequest
1 голос
/ 03 июня 2010

При попытке вызвать метод в редакторе кода JavaScript CodeMirror . Я новичок в JavaScript и пытаюсь понять, как работает объектно-ориентированный материал. У меня проблемы с тем, что я называю методами. Например,

var editor = CodeMirror.fromTextArea('code', options);
editor.grabKeys(function(e) { alert("Key event");});

Это дает Uncaught TypeError: Cannot call method 'grabKeys' of undefined. Глядя на объект editor, вы обнаруживаете, что grabKeys, кажется, расположен в editor.__proto__.grabKeys.

Как я должен думать об этом?

1 Ответ

2 голосов
/ 03 июня 2010

Вероятно, ваш код должен выглядеть примерно так:

var editor = new CodeMirror.fromTextArea('code', options);
editor.grabKeys(function(e) { alert("Key event");});

Обратите внимание на оператор 'new'.

Вот хорошее объяснение того, для чего нужны вызовы методов-прототипов:

http://www.javascriptkit.com/javatutors/proto.shtml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...