我正在开发一个带有自动填充选项的Google地图应用。我正在使用place.address_components[2].short_name
来获取状态。它适用于某些城市,但并非适用于所有城市。就像亚利桑那一样,它给出了TypeError: place.address_components[2] is undefined
如何处理这个错误?
答案 0 :(得分:0)
检查它是否已定义:
if (place.address_components[2] !== undefined) { // if this is true, it is defined.
}
或者如果您认为有必要,可以使用try / catch。如果可以的话,尽量避免尝试/捕获。
如果未定义address_components [2],我不确定谷歌地图意味着什么,你应该尝试记录address_components以查看它在Arizona VS其他结果中的地址是什么。
必须有一种方法来获得状态..玩弄你的数据。
答案 1 :(得分:0)
if (typeof place.address_components[2] != 'undefined') {
var state = place.address_components[2].short_name.toLowerCase();
} else {
// do something else;
}
以上代码解决了我的问题。谢谢@Spencer Lockhart的回答。