Javascript 如何在嵌套函数中返回数据
我试图在检查用户是否存在后返回函数Javascript 如何在嵌套函数中返回数据,javascript,jquery,Javascript,Jquery,我试图在检查用户是否存在后返回函数 var data = checkUser(); alert(data); //检查用户后返回数据 function checkUser(){ $.ajax({ type : "get", url : "checkuser", data : { username : username, }, success: function(){ return "ok";
var data = checkUser();
alert(data);
//检查用户后返回数据
function checkUser(){
$.ajax({
type : "get",
url : "checkuser",
data : {
username : username,
},
success: function(){
return "ok";
},
error : function(){
return "error";
}
});
}
如果嵌套函数是异步函数,则需要使用
async
和wait
。
一种方法是:
async function checkUser(){
try {
const result = await fetch("checkuser",{data:username});
alert("ok");
} catch (err) {
alert("error");
}
}
最好在这种情况下使用:
var myCallback = function(data){
alert(data);
};
checkUser(myCallback);
您的ajax将是:
function checkUser(callback){
$.ajax({
type : "get",
url : "checkuser",
data : {
username : username,
},
success: function(){
callback("ok");
},
error : function(){
callback("error");
}
});
}
请阅读有关您无法从异步函数返回的详细信息。我希望返回ok/error string checkUser函数