Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery.Deferred异常:无法读取未定义“”类型的属性“0”错误:无法读取未定义“”类型的属性“0”_Jquery_Api - Fatal编程技术网

jQuery.Deferred异常:无法读取未定义“”类型的属性“0”错误:无法读取未定义“”类型的属性“0”

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){

我一直使用codepen:jQuery在控制台上获取此消息。延迟异常:无法读取未定义类型的属性“0”错误:无法读取未定义类型的属性“0”

我的javascript代码:

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”表示位置,因此它可以记录纬度和经度。