这是我的代码:
function User() {
var self = this;
FB.api(someurl, function (response) {
self.id = response.id;
});
}
我无法像这样获取 id:
var user = new User();
console.log(user.id);
最佳答案
FB.api 是一个带有回调的异步函数。当您读取 user.id
时,回调函数尚未被调用。
也许您应该将异步初始化移出构造函数,添加显式的“init”函数:
function User() {
var self = this;
this.init = function(onCompletion) {
FB.api(someurl, function (response) {
self.id = response.id;
if (onCompletion) onCompletion();
});
}
}
var user = new User();
user.init(function(){
console.log(user.id);
});
关于javascript - 无法使用 js 类获取 FB.api 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35312346/