我正在使用Google maps API将纬度/经度转换为街道地址,并对其返回的地址进行一些验证。
我希望它是一个完整的地址,街道号码和街道名称,没有角落,没有高速公路。但是当我的代码进入下一部分时,我的代码会一直冻结:
var geoaddress = formatted_address.split(/,(.+)/)[0];
var geozip = formatted_address.match(/CA (.*?),/i)[1];
var matches1 = geoaddress.match(/\d+/g);
var matches2 =geoaddress.match(/^\d+$/)
if( geoaddress.indexOf( "Freeway" ) !== -1 ) {
alert('We cannot send a cab to a freeway, please call 411');
document.getElementById('map_dragged').innerHTML = '<img src="/images/alert.png" style="vertical-align:middle"/> Cannot pickup on Freeway, call 411';
} else if (matches1 == null) {
document.getElementById('map_dragged').innerHTML = '<img src="/images/alert.png" style="vertical-align:middle"/> not a valid address, please try again';
} else if (matches2 != null) {
document.getElementById('map_dragged').innerHTML = '<img src="/images/alert.png" style="vertical-align:middle"/>not a valid address, please try again';
}else {
//valid address
}
我怎样才能更有效地写这个?