function getUsername() {
$.get("http://www.roblox.com/mobileapi/userinfo", function(data) {
return data.UserName;
});
}
console.log(getUsername());
它说" undefined"但每当我手动访问链接时,它会显示
{"UserID":74798521,"UserName":"AbstractMadness","RobuxBalance":7024,"TicketsBalance":21530,"ThumbnailUrl":"http://t2.rbxcdn.com/c189198f6c0689ce004d9438c70eb1bb","IsAnyBuildersClubMember":true}
如果我在函数内部执行console.log(data.UserName),它也会记录名称。
答案 0 :(得分:0)
这不是同步的。您正在打印该函数的返回,该函数不返回任何内容(因此未定义)。即使您要返回$.get
电话,也不会得到您想要的内容。您需要登录回调函数或使用promise。
function getUsername() {
return $.get("http://www.roblox.com/mobileapi/userinfo", function(data) {
console.log(data.UserName);
return data.UserName;
});
}
getUsername().done(function(username) { console.log(username); });
答案 1 :(得分:0)
函数getUsername
执行$.get
请求,但它不返回任何内容,并在此处结束。
您必须在异步$.get
请求的函数中记录您的数据。该函数(函数(数据))是一个回调函数。如果您的$.get
请求的响应到达,则会调用它。