我需要从函数buttons
访问enableNav
属性,但我的问题是我不能,因为this
引用指向enableNav
函数而不是buttons
函数对象本身,我如何正确获取(function() {
var MyCustomObject = {
init: function(config) {
this.myvar = config.myvar;
this.buttons = config.buttons;
this.enableNav();
},
enableNav: function() {
// need to use buttons here!!
}
};
MyCustomObject.init({
myVar: 3,
buttons: $('button')
});
})();
?
{{1}}
答案 0 :(得分:0)
this
参考指向enableNav
函数
不,不。
你在这里叫它:
this.enableNav();
因此,在enableNav
内,this
将是this
在该行上的任何值。
(因为,假设未使用new
,当您致电foo.bar.baz()
时,baz
会因bar
的价值获得this
。
这样:
enableNav: function() {
this.buttons.append(foo); // or whatever
}