我是 javascript OOP 的初学者。我正在尝试制作一个 API 来提供存储在数据库中的信息。我没有专门使用回调。
我的构造函数进行异步调用(get_question 函数),所以当我想使用我的 API 时:
var obj = new API('id');
obj.get_description();
我的对象是空的,因为没有同步!
那么,如何在知道我的构造函数进行异步调用的情况下以这种方式创建可用的 API?
这是我的 API 类的代码:
var API = function(question_id_algo) {
var id_algo = question_id_algo;
var self = this;
var question_object = null;
this.callback_db_init = function(data) {
question_object = data;
}
get_question(id_algo, self.callback_db_init);
this.get_description = function() {
if(question_object != null){
return question_object.description;
}
}
}
还有我的 get_question 函数
function get_question(id_algo, callback_function)
{
Lungo.Data.Sql.select('question', {id_algo: id_algo}, callback_function);
}
我使用Lungo.js框架来访问我的 SQLite 数据库。