Мне трудно ссылаться на "this" из встроенной функции javascript, внутри метода объекта.
var testObject = {
oThis : this,
testVariable : "somestring",
init : function(){
console.log(this.testVariable); // outputs testVariable as expected
this.testObject.submit(function(){
var anotherThis = this;
console.log(this.testVariable) // undefined
console.log(oThis.testVariable) // undefined
console.log(testObject.testVariable) // outputs testVariable
console.log(anotherThis.testVariable) // undefined
}
}
Как получить доступ к this.testVariable
из функции отправки?
Я также использую jQuery, если это имеет значение.
Интересно, является ли это лучшим подходом - и, возможно, я должен был бы представить в виде отдельной функции, а затем сослаться на эту строку, например:
init : function(){
this.testObject.submit = this.submitForm;
},
submitForm : function(){
// do validation here
console.log(this.testVariable) // outputs testvariable
.
.
.
return valid;
}
Но, похоже, это тоже не сработало - и я думаю, что сейчас я просто хотел бы оставить функцию отправки встроенной в моем методе init
.