爲什麼在函數被調用時不會返回一個值?我用回調試了一下,我似乎也無法讓它工作。它讓我console.log,但它不會將它返回到tmp
變量。ajax函數的返回值
var URL = "https://api.instagram.com/v1/media/popular?client_id=642176ece1e7445e99244cec26f4de1f";
function getData(){
var tmp;
$.ajax({
type: "GET",
url: URL,
dataType: "jsonp",
success: function(result){
if(result.meta.code == 200){
tmp = result.data;
//console.log(result.data);
}else{
alert('fail');
alert(result.meta.error_message);
}
}
});
return tmp;
}
console.log(getData()); // undefined?
在此先感謝!
爲了使它工作,請添加prop'async:false',但我不會推薦它。 – DinoMyte
如果您設置** async:false **,則腳本將阻塞,直到請求完成。這可能會影響用戶界面中的用戶體驗。 –
*請勿*添加prop'async:false',由於某種原因已棄用。學習如何使用異步操作代替 – DelightedD0D