我有以下脚本,我正在尝试为应用程序创建配置对象:
var myConfig = {
localDBAllowed: function () {
return window.openDatabase;
},
MessageBox: function (message, title) {
if (navigator.notification) {
navigator.notification.alert(message, null, title, 'OK');
} else {
alert(message);
}
},
initializeDb: function(){
if (localDBAllowed) {
messageBox('local db allowed', '');
} else {
messageBox('local db not allowed', '');
}
}
};
myConfig .initializeDb();
我得到的错误是localDBAllowed未定义..来自以下行:if (localDBAllowed) {
我的问题是如何从理智的对象中访问对象的成员/方法。 我尝试使用此关键字但没有成功,如下所示:
if (this.localDBAllowed) {
messageBox('local db allowed', '');
答案 0 :(得分:1)
this.localDBAllowed
不会返回任何值,请尝试
this.localDBAllowed()
应该做的伎俩
答案 1 :(得分:0)
这个对我有用。 (双关语)
var myConfig = {
localDBAllowed: function () {
return window.openDatabase;
},
messageBox: function (message, title) {
if (navigator.notification) {
navigator.notification.alert(message, null, title, 'OK');
} else {
alert(message);
}
},
initializeDb: function (){
if (this.localDBAllowed) {
this.messageBox('local db allowed', '');
} else {
this.messageBox('local db not allowed', '');
}
}
};
myConfig .initializeDb();
我所做的就是将this
标识符添加到对象中调用函数或变量的区域。