(入力ボックスを介して) 入力された値が既に存在するかどうかを確認するために、サーバーと何らかの通信を行うボタンがあります。コードは次のとおりです。
$("#button").click(function () {
var exists = false;
var name = $("#name").val();
socket.emit("check", name);
socket.on("checkReturn", function (data) {
exists = data.result;
});
if (exists) {
console.log("exists")
} else {
if (name.length > 0) {
socket.emit("create", name);
}
}
});
});
問題は、checkReturn
呼び出しが非同期であるため、実際に結果を待たずにコードが続行されることです。checkReturn
最初にそれが終了してから、残りのコードが実行されるようにするにはどうすればよいですか?