2017-01-22 69 views
1

我想通过我的json数据location参数assignLocationValuesconsole.log它。当我登录location.loc它显示了两个值,如下所示:4,2394,5,3023。当我从它的价值如:location.loc[1]并记录它。价值变化,而不是5,3023它变为1.发生了什么?为什么我的JSON数据改变了?

编辑:弄明白了。我真的认为这是一个数组。太奇怪了...............

$(document).ready(function() { 
getLocation(); 

function getLocation() { 

    $.get("http://ipinfo.io", function(location) { 

    assignLocationValues(location.loc[0], location.loc[1], location.city, location.region, location.country); 

    function assignLocationValues(lat, lon, city, region, country){ 

     console.log(location.loc); 
     console.log(lat); 
    }; 
    }, 'jsonp'); 
}; 
}); 

回答

0

将其放入在标签底部的脚本标签(的document.ready是昨天的新闻)

function assignLocationValues(obj_location){ 

    var loc = obj_location; 

    var _city = loc.city; 
    var _country = loc.country; 
    var _hostname = loc.hostname; 
    var _ip = loc.ip; 
    //.... 
    console.log(_ip); 

}; 

function getLocation() { 
    $.get("http://ipinfo.io/json", function(location) { 
     assignLocationValues(location); 
    }); 
} 

getLocation(); 
-1

试试这个:http://jsbin.com/IDebUfu/1/edit?html,js,output

$.getJSON("http://ip-api.com/json/?callback=?", function(data) { 
    var table_body = ""; 
    $.each(data, function(k, v) { 
    table_body += "<tr><td>" + k + "</td><td><b>" + v + "</b></td></tr>"; 
    }); 
    $("#GeoResults").html(table_body); 
}); 
相关问题