从数组JavaScript转换变量时返回NaN的parseFloat
我试图将一个值转换为浮点值,这是我从数组中得到的,但它总是以NaN的形式出现,即使它以一个数字开头。我做错了什么从数组JavaScript转换变量时返回NaN的parseFloat,javascript,arrays,parsefloat,Javascript,Arrays,Parsefloat,我试图将一个值转换为浮点值,这是我从数组中得到的,但它总是以NaN的形式出现,即使它以一个数字开头。我做错了什么 var lat = <?php echo json_encode($result1); ?>; for(var i = 0; i<lat.length; i++){ //var lokacija = {lat: parseFloat(lat[i]), lng: parseFloat(lng[i])}; //var marker = new googl
var lat = <?php echo json_encode($result1); ?>;
for(var i = 0; i<lat.length; i++){
//var lokacija = {lat: parseFloat(lat[i]), lng: parseFloat(lng[i])};
//var marker = new google.maps.Marker({position: lokacija, map: map});
var num2 = lat[i];
console.log(lat[i]);
console.log(parseFloat(num2)
}
var-lat=;
对于(var i=0;i,看起来您有一个对象数组,需要从中获取lat
属性:
var arr = <?php echo json_encode($result1); ?>;
for (var i = 0; i < arr.length; i++){
var num2 = arr[i].lat;
console.log(parseFloat(num2);
}
因为您传递的对象包含{lat:“46.14….”}
尝试将lat[i].lat
传递到parserFloat
函数中
或者在您的代码中:
var lat = <?php echo json_encode($result1); ?>;
for(var i = 0; i<lat.length; i++){
//var lokacija = {lat: parseFloat(lat[i]), lng: parseFloat(lng[i])};
//var marker = new google.maps.Marker({position: lokacija, map: map});
var num2 = lat[i].lat;
console.log(lat[i]);
console.log(parseFloat(num2));
}
var-lat=;
对于(var i=0;i您的数组包含一组对象,因此您需要适当地访问每个对象的属性。您可以使用ES6对象分解作为实现这一点的一种方法(通过将变量命名为与您试图从对象访问的属性相同的名称)
var lats=[{
lat:“46.14949843”
}, {
纬度:“-21.20654846”
}];
对于(变量i=0;i
tryconsole.log(parseFloat(num2.lat))
var lat = <?php echo json_encode($result1); ?>;
for(var i = 0; i<lat.length; i++){
//var lokacija = {lat: parseFloat(lat[i]), lng: parseFloat(lng[i])};
//var marker = new google.maps.Marker({position: lokacija, map: map});
var num2 = lat[i].lat;
console.log(lat[i]);
console.log(parseFloat(num2));
}