Javascript 使用jQuery访问Google Maps PHP中的数据

Javascript 使用jQuery访问Google Maps PHP中的数据,javascript,jquery,arrays,Javascript,Jquery,Arrays,我在正确访问Google Maps API php中的数据时遇到问题 以下是php中的示例数据: {"destination_addresses":["Destination address"],"origin_addresses":["Origin address"],"rows":[{"elements":[{"distance":{"text":"3.3 km","value":3314},"duration":{"text":"6 mins","value":334},"status":

我在正确访问Google Maps API php中的数据时遇到问题

以下是php中的示例数据:

{"destination_addresses":["Destination address"],"origin_addresses":["Origin address"],"rows":[{"elements":[{"distance":{"text":"3.3 km","value":3314},"duration":{"text":"6 mins","value":334},"status":"OK"}]}],"status":"OK"}
这是我的.js:

$(function(){   
    $("#button").click(function(){
        var start = $("#start").val(); //gets start and end values from input fields, and passes them to .php which is not visible here.
        var end = $("#end").val();

        $.ajax({url: "googlemaps.php", 
            method: "GET", 
            data : { "start" : start, "end" : end },
            success: function(result) { 
            print(result);                      
        },
            error: function(xhr){
            alert("Error: " + xhr.status + " " + xhr.statusText);
            }               
        });

    });  
});

function print(result){
    var length = "";
    for(var i = 0;i < result.rows.length;i++){
    length += result.rows[i].text+ "<br/>";

        $("#div").html(length);
    }}
它应该计算两个地址之间的距离,并且它当前返回unidentified,这是可以的,因为

length += result.rows[i].text+ "<br/>";
这是不对的。我不知道如何访问值文本:3.3公里,或者在我的代码中是等效的。我知道它是距离内的一个对象,它是元素的数组项,它是行的数组项

其结构类似于:

行[0]。元素[0]。距离。文本

您可能不需要循环,但如果要使用它,您可以执行以下操作

for (var i = 0;i < result.rows.length; i++) {
  for (var k = 0;k < result.rows[i].elements.length; k++) {
    length += result.rows[i].elements[k].distance.text + "<br/>";
  }
}

$("#div").html(length);
如果数组是结果,则可以使用以下方法访问距离:

var distance = result['rows'][0]['elements'][0]['distance']['text'];