我有一个名为value
的数组,当我console.log(value)
时,我得到了大约30行代码,其中包含以下[6.443663, 3.419248]
数字随纬度和经度而变化。但我需要以某种方式摆脱每个方括号。
我尝试var replaced = value.toString().replace(/\[.*\]/g,'');
,但这将上面的示例更改为6.443407,3.419035000000008
,但我的代码失败了。
换句话说,我需要帮助摆脱数组中的方括号,以便在我的地图上绘制点。
我的数组由以下代码组成,因为每个纬度和经度值都保存在onClick
个链接中的a
个函数中。所以这里的一个成员友好地提供了下面的代码来将我的值放到一个数组中,但现在我正在努力获取值而没有任何括号破坏它。
var obj = {};
$('.choice-location-inner a').each(function(){
var $this = $(this);
var text = $this.attr('onClick').replace('findLocation(\'', '').replace('\');return false;', '');
var array = text.split(',')
obj[this.id]= [parseFloat(array[0]), parseFloat(array[1])];
});
阵列正在尝试使用以下代码在我的Google地图上绘制标记
$.each(obj , function(index, value){
geocoder = new google.maps.Geocoder();
geocoder.geocode( { 'address': value}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
marker = new google.maps.Marker({
map: map,
icon: image,
position: results[0].geometry.location
});
} else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) {
wait = true;
setTimeout("wait = false", 1000);
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
});
答案 0 :(得分:9)
将行转换为数组。
var value = [[1234213, 1234231], [1234213, 1234231]];
var dato = value[0];
console.log(dato.toString());
答案 1 :(得分:8)
除非我误读并且该项是一个对象而不是包含括号的字符串,否则您可以通过其子数组poition访问它
lat = obj[this.id][0]
lng = obj[this.id][1]
也许?
答案 2 :(得分:2)
看起来你想要数组的逗号分隔字符串表示。如果是这种情况,您可以这样做:
var commasep = value.join(",");
答案 3 :(得分:0)
`${arr.map(({ id }) => id)}`
也许除了使用内置功能之外,这种方法还很简单!
答案 4 :(得分:0)
如果你需要一个干净的输入,你可以写这个。
var justTheDataWithoutSeparation = data.split('');
当然,如果你想用逗号或者别的什么来分隔,就需要加上
vat dataSeparatedWithSomething = data.split('-');
<块引用>
您需要小心,因为执行此方法会导致您的数据设置为字符串值,并可能影响您的输出,您需要在此之前进行转换。