Google Maps API:如何从数组设置InfoWindow内容并去除多余逗号
解决InfoWindow内容中出现逗号的问题
这个问题其实挺常见的——当你把map返回的数组直接和字符串拼接时,JavaScript会自动把数组转换成字符串,而数组转字符串默认是用逗号作为分隔符的,这就是那些讨厌逗号的由来。
解决起来很简单,只需要在map方法之后调用join(''),把数组里的所有HTML片段无缝拼接成一个完整的字符串就行:
var arrayTest = ["a", "b"]; infoWindow.setContent("<p>Header</p>" + arrayTest.map(function (val) { return "<p>" + val + "</p>" }).join('')); // 关键是加上这个.join('') infoWindow.open(map, marker);
这样处理后,数组里的<p>a</p>和<p>b</p>就会直接连在一起,不会插入多余的逗号。如果之后你需要其他分隔符(比如换行或者空格),也可以把join的参数改成对应的字符,比如join('<br>'),不过这里你不需要的话,传空字符串就完美解决问题啦。
内容的提问来源于stack exchange,提问作者ShaneOG97
相关产品推荐
相关产品推荐

