Javascript Google distancematrixservice response.rows[i].elements.status为零,但变量未定义

Javascript Google distancematrixservice response.rows[i].elements.status为零,但变量未定义,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我正在使用来自距离矩阵服务的GoogleAPI的示例代码。我想捕获返回的ZERO_结果,但如果我试图检查response.rows[I].elements.status,但console.log()表示它未定义 如果我将response.rows[I].elements转储到控制台,我会看到设置为“ZERO\u RESULTS”的值 函数calcDistance(){ var finalDistance=“”; var service=new google.maps.DistanceMatrix

我正在使用来自距离矩阵服务的GoogleAPI的示例代码。我想捕获返回的ZERO_结果,但如果我试图检查response.rows[I].elements.status,但console.log()表示它未定义

如果我将response.rows[I].elements转储到控制台,我会看到设置为“ZERO\u RESULTS”的值

函数calcDistance(){
var finalDistance=“”;
var service=new google.maps.DistanceMatrixService();
service.getDistanceMatrix(
{
原点:[autocomplete.getPlace().geometry.location],
目标:[自动完成2.getPlace().geometry.location],
travelMode:“驾驶”
},回调);
函数回调(响应、状态){
如果(状态=‘正常’){
var origins=response.originAddresses;
var destinations=response.destinationaddress;
对于(变量i=0;i

您的代码中有一个输入错误<代码>元素
是一个数组<代码>响应。行[i]。元素。状态未定义,
响应。行[i]。元素[0]。状态
有效

代码片段:

函数calcDistance(){
var finalDistance=“”;
var service=new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
来源:[“纽约州纽约市”],
目的地:[“新泽西州纽瓦克”],
travelMode:“驾驶”
},回调);
函数回调(响应、状态){
如果(状态=‘正常’){
var origins=response.originAddresses;
var destinations=response.destinationaddress;
对于(变量i=0;i
function calcDistance() {
  var finalDistance = "";
  var service = new google.maps.DistanceMatrixService();
  service.getDistanceMatrix(
     {
        origins: [autocomplete.getPlace().geometry.location],
        destinations: [autocomplete2.getPlace().geometry.location],
        travelMode: 'DRIVING'
      }, callback);

   function callback(response, status) {

      if (status == 'OK') {
          var origins = response.originAddresses;
          var destinations = response.destinationAddresses;    

          for (var i = 0; i < origins.length; i++) {
            var results = response.rows[i].elements;

            console.log(response.rows[i].elements);
            console.log(response.rows[i].elements.status);

            for (var j = 0; j < results.length; j++) {
                var element = results[j];
                //alert('status' + results.status);
                var duration = element.duration.text;
                var from = origins[i];
                var to = destinations[j];
            }
          }
        }
      }
    }