jQuery.Deferred异常:无法读取未定义“”类型的属性“0”错误:无法读取未定义“”类型的属性“0”
我一直使用codepen:jQuery在控制台上获取此消息。延迟异常:无法读取未定义类型的属性“0”错误:无法读取未定义类型的属性“0” 我的javascript代码:jQuery.Deferred异常:无法读取未定义“”类型的属性“0”错误:无法读取未定义“”类型的属性“0”,jquery,api,Jquery,Api,我一直使用codepen:jQuery在控制台上获取此消息。延迟异常:无法读取未定义类型的属性“0”错误:无法读取未定义类型的属性“0” 我的javascript代码: var api_key = "fa15d403d0ab55e3cfd6e0867bbb0114"; $(document).ready(function(){ var loc; //Call the location $.getJSON('https://ipinfo.io', function(data){
var api_key = "fa15d403d0ab55e3cfd6e0867bbb0114";
$(document).ready(function(){
var loc;
//Call the location
$.getJSON('https://ipinfo.io', function(data){
loc = data.loc.split(",");
console.log(loc);
});
$.getJSON('http://api.openweathermap.org/data/2.5/weather?lat=' + loc[0] + '&lon=' + loc[1] + '&APPID='+ api_key, function(weather){
console.table("c ,",weather);
});
});
这意味着您正在尝试读取未定义对象的0属性 根据您共享的代码,这里发生了这样的情况:loc[0]-loc未定义,因此它抛出了错误
它未定义的原因是因为异步排序-您的第一个函数尚未在设置loc的位置执行回调。尝试将第二个调用放在第一个函数中的console.log调用之后,而不是它之后。当console.logloc;“loc”表示位置,因此它可以记录纬度和经度。