我的页面上有一个表格。当用户点击发送按钮时,它还会在后台通过调用生成此号码的函数来生成一个 unique_number,并在数据库中检查该号码不存在;如果有 - 再次生成,如果没有 - 返回这个数字。但是,由于某种原因,当我试图将这个数字打印到页面上或提醒它时 - 我得到了undefined
,尽管函数返回了这个数字。这是函数的调用:
var unique_num = create_unique_number();
alert(unique_num);
rest of this function...
这是函数本身:
function create_unique_number()
{
var num = Math.floor(Math.random() * (999999 - 100000 + 1)) + 100000;
$.getJSON("inc/API.php",
{
command:"is_unique_number_exist",
unique_num:num
},
function(result){
if(result==true){
create_unique_number();
}
else
{
return num;
}
});
}
我确实得到了结果,如果它是真的 - 它会生成新的数字,如果是假的 - 应该返回。我尝试alert
了else
部分中的数字,它确实提醒了数字,但返回时 - 未定义。为什么会发生以及如何解决?