为什么我的函数有时不执行document.body.innerHTML命令?

时间:2013-08-29 14:13:08

标签: javascript

我已经开始使用Google API从Google地图输出数据。调用该函数以从一组位置输出。

问题是有时它不会输出最后一个输出地方URL的document.body.innerHTML部分。如果我删除输出地点审核方面的for循环,则始终显示URL。

function printme(place, status) {
  if (status == google.maps.places.PlacesServiceStatus.OK) {
  document.body.innerHTML += ('<br />'+ place.name + ' R: '+ place.rating);

  for (var i = 0, reviews; reviews = place.reviews[i]; i++) {

    for (var x = 0, aspectr; aspectr = reviews.aspects[x]; x++) {
      document.body.innerHTML += ('<br />'+'Aspect: ' + aspectr.type + ' ' + aspectr.rating);
    }

}

  document.body.innerHTML += ('<br />'+ '<a href = '+place.url+'>'+place.url+'</a>'+'<br />'); 
  }

  else {
    alert(status);
  }
}

我无法理解为什么会这样。

1 个答案:

答案 0 :(得分:0)

我在代码周围包装了以下if语句,现在可以找到它:

if (typeof place.reviews !== 'undefined'){