我想在一个循环内定义变量。我会在这里放下代码,然后试着解释一些:如何在javascript中的for循环中定义变量?
for (var k=0; k<nodes.length; k++){
this[node+k] = new google.maps.Marker({
position: new google.maps.LatLng(array1[k], array2[k]),
map: map,
title: node[k],
icon: "some image file"
});
}
我想创建的将被命名变量列表唱已定义的数组(名称的数组被称为节点上面的代码)。所以在这个循环中,我想定义一个新变量“this [node + k]”来创建一个新的google.maps.marker变量。
其目的是为我想写的一些管理软件在一个自定义Google地图上制作一堆带有弹出窗口的标记。
我确定必须有一些方法来做到这一点,因为我看到了其他代码来定义循环中的变量(当然,我不能再找到...... :()。但是,变量的名称是定义在循环中并没有从另一个数组中取出(因为我的是)
我不想创建var1,var2,var3,我看到了如何做到这一点。 array。
我很抱歉,如果问题仍然不清楚,但感谢您的帮助到目前为止,我有一种感觉,它可能是谷歌地图代码混淆的情况太多,所以这里是最初的方式来定义谷歌地图标记变量:
var NAME1= new google.maps.Marker({
position: new google.maps.LatLng(29.70600, -95.28159), // coordinates
map: map,
title:"NAME1", // marker title
icon: "http://127.0.0.1/public_html/tower.gif" // icon
});
我现在的代码只是重复此代码20+次来定义所有不同的变量。我想尝试把这一切都放到for循环中,并使用数组中的名称定义变量。
你能解释这更好的?我不知道你真的想达到什么。即。什么不适合你当前的代码? – brad 2010-06-09 19:41:36
你想动态创建X个变量?不可能。 – 2010-06-10 17:38:35
http://groups.google.com/group/google-maps-js-api-v3/browse_thread/thread/30b3f94096ae3e6b/7952f688abc30c69?lnk=raot&fwc=1&pli=1 我想我会将此链接添加到任何人感兴趣,这解释了如何在循环内创建许多这样的地图标记,其中包含存储在不同数组中的latlong坐标,名称等所有信息。 – Oarcinae 2010-06-16 20:10:35