JavaScript可以用循环的方式添加地图标注点吗?

图是我添加单个地图标注点的代码,我需要标注很多点,不想一个个加。我想通过建一个坐标的数组,通过循环的方式每次自动导入一组坐标,不知道行不行,但是因为同时变的有两个数字,我不知道怎么弄了,谁能帮帮我,跪求帮助。

是的,你可以使用循环的方式添加地图标注点。你可以创建一个坐标的数组,然后通过循环遍历数组,在每次迭代中创建一个新的标注点并添加到地图上。
以下是示例代码:
javascriptCopy codevar coordinates = [ new BMapGL.Point(120.340364, 30.316267), // 添加更多坐标点...];for (var i = 0; i < coordinates.length; i++) { var marker = new BMapGL.Marker(coordinates[i]);
map.addOverlay(marker);
}

在这个示例中,coordinates 是一个包含多个坐标点的数组。通过循环遍历数组,每次迭代中创建一个新的标注点 marker,然后将其添加到地图上。
你可以将需要标注的坐标点依次添加到 coordinates 数组中,然后运行上述代码,即可自动添加多个地图标注点。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-07-12

坐标数据可以采用二维数组:

var data = [[120.340364, 30.316267], [112.654201, 29.786563], [...]];

for(var i in data){

var hzcc2023_100_nan = new BMapGL.Point(data[i][0], data[i][1]);

//...其他代码略

}

或者采用对象数组(推荐):

var data = [{x : 120.340364, y : 30.316267}, {x : 112.654201, y : 29.786563}, {...}];

for(var i in data){

var hzcc2023_100_nan = new BMapGL.Point(data[i].x, data[i].y);

//...其他代码略

}

相似回答
大家正在搜