Javascript 如何在谷歌地图多边形路径生成器中创建for循环?
我有一个小问题。我用javascript编写了一个脚本,用于创建多边形路径,然后在地图上显示它。但我没有使用for循环。出于这个原因,我的脚本只适用于具有4个点的多边形。但是如果我有超过4个点,我需要一个for循环。你知道怎么做吗? 这是4点的脚本:Javascript 如何在谷歌地图多边形路径生成器中创建for循环?,javascript,php,google-maps,Javascript,Php,Google Maps,我有一个小问题。我用javascript编写了一个脚本,用于创建多边形路径,然后在地图上显示它。但我没有使用for循环。出于这个原因,我的脚本只适用于具有4个点的多边形。但是如果我有超过4个点,我需要一个for循环。你知道怎么做吗? 这是4点的脚本: var triangleCoords = [ {lat: <?php echo $POLYGON[0] ?>, lng: <?php echo $POLYGON[1] ?>},
var triangleCoords = [
{lat: <?php echo $POLYGON[0] ?>, lng: <?php echo $POLYGON[1] ?>},
{lat: <?php echo $POLYGON[2] ?>, lng: <?php echo $POLYGON[3] ?>},
{lat: <?php echo $POLYGON[4] ?>, lng: <?php echo $POLYGON[5] ?>},
{lat: <?php echo $POLYGON[6] ?>, lng: <?php echo $POLYGON[7] ?>},
{lat: <?php echo $POLYGON[0] ?>, lng: <?php echo $POLYGON[1] ?>}
];
var triangelecoords=[
{lat:,lng:},
{lat:,lng:},
{lat:,lng:},
{lat:,lng:},
{lat:,lng:}
];
根据poligon结构,您可以使用循环步骤2
<?php
for ( $i = 0 ; $i< (count($POLYGON)/2); $i+=2 ){
$innerString = '{lat:' .$POLIGON[$i] . ', lng:' .$POLIGON[$i+1] . '},';
}
$innerString = strleft($innerString, length($innerstring)-1); // remove the last comma because some browser version (Opera and Chrome)
// have problem with this js notation
?>
var triangleCoords = [
<?php echo $innerString; ?>
];
var triangleCoords=[
];
答案取决于您的数据,通常的过程是您尝试一下,然后请求帮助使其正常工作。因此,如果您尝试一下,然后向我们展示您所拥有的,我们非常愿意帮助您修复它。但是,我们不会根据规范为您编写代码,您在使用Objective时应该使用forin循环这是一个好主意。但我向上帝发誓,我有一个小时的时间来看看当我将您的代码放入我的页面时会发生什么,没有其他显示。没有。我认为是语法错误或其他原因,但我不知道哪个/我已经使用strleft()更新了答案获取左字符串减去最后一个逗号。。无论如何,您可以查看使用control+U生成的代码,并检查var TriangalCoords是否包含正确的json代码。它给我“加载资源失败500(内部服务器错误)”找到了它。它不是$i+2,而是$i+=2@Andrei . 正确答案已更新。。