У меня возникла проблема с кодом javascript.Область переменной в функции обратного вызова
У меня есть класс MyClass
и добавлена функция myFunction
к ее прототипу.
MyClass.prototype.myFunction = function(file){
if(some condition){
fs.exists("./" + file, function(exists){
if(exists)
console.log(this.someValue);
/* lot of other code */
else
/* do something else */
});
}else{
/* do something */
}
}
Моя проблема заключается в область видимости this.someValue
(в качестве примера я хочу просто напечатать его). Everytime exists
равно true
консольные журналы undefined
, но это не так. Если бы я напечатал его за пределами fs.exists()
, тогда он имеет значение, поэтому я предполагаю, что это проблема с определением области видимости.
Как я могу получить доступ к this.someValue
в этом примере?
Заранее благодарен!
'{location: London" 'недействителен, fwiw – naomik
Typo .. Спасибо за то, что вы заметили. – moka