Я новичок в объектно-ориентированном javascript. У меня есть простой класс, что похоже на функцию JavaScript. Мой класс имеет два члена и некоторые методы:Ссылки и область применения анонимных функций
function WebApp() {
//members
this.webSocket = null;
this.workdata = null;
//constructor
$('document').ready(function() {
$('#wait').show();
this.initializeWebsocket();
});
this.getURLParameter = function(sParam)
{
//retrieves GET-PARAMETER
}
this.initializeWebsocket = function() {
//websocket connection
}
}
var app = new WebApp();
Когда анонимная функция для document.ready прогонов я получаю следующее сообщение об ошибке: Uncaught ReferenceError: initializeWebsocket не определен
Я понимаю исключение, потому что это в этом документе. Я могу вызвать функцию на этом пути:
app.initializeWebsocket();
Но на этом пути я не могу создать экземпляр более чем один объект WebApp. Можно ли передать this-webappinstance в качестве ссылки в анонимную функцию?
Вы не должны использовать документ в своем конструкторе. Он должен содержать весь код, который выполняется после того, как документ будет готов. – nils
действительно хороший намек. Благодаря ! – user1829716