我正在尝试在同一个对象中调用PDO::FETCH_OBJ
这是一种方法。但是当我尝试读取quizz.config.allQuestions属性时,我收到一条错误消息“未捕获的TypeError:无法读取未定义的属性'getQuestions'。”我在这里缺少什么吗?
System.Web.HostingEnvrionment.ShutdownReason
答案 0 :(得分:2)
当您尝试分配给allQuestions
时,quizz
对象尚未初始化。因此,您必须在创建对象后执行此操作。
var quizz = {
config: {
urlJSON: 'questions.json'
// don't declare allQuestions
},
getQuestions: ...
};
quizz.allQuestions = quizz.getQuestions();
的问题是$.getJSON
是一个异步函数,这意味着它不会立即返回该值。这就是为什么它有一个回调。相反,您可以尝试像这样定义getQuestions
:
getQuestions: function(callback) {
$.getJSON(quizz.config.urlJSON, callback);
}
然后你可以得到这样的值:
quizz.getQuestions(function(questions) {
quizz.config.allQuestions = questions;
});