伙计们!我在将字符串数组转换为 float 时遇到问题。如果我使用 map(parseFloat) 我会得到 int 数字。 40,78 中的逗号是否有问题,这就是为什么我使用 parseFloat 函数时得到 40 的原因?
这是我要转换的数组:
[["40,78","6,27","0,00",null,null,null,null,null,null,null,null,null,"35,87",null,null]];
我想把它转换成这样:
[[40.78,6.27,0.00,null,null,null,null,null,null,null,null,null,35.87,null,null]];
有人有什么想法吗?提前致谢!
最佳答案
正如你所说。 parseFloat()
仅将带有 .
字符的字符串视为 float ,而不是 ,
。它还为 null
值返回 NaN
:
var arr = ["40,78","6,27","0,00",null,null,null,null,null,null,null,null,null,"35,87",null,null];
var res = arr.map(function(val) {
return val ? parseFloat(val.replace(',', '.')) : null;
});
console.log(res);
关于javascript - AngularJS 将字符串数组转换为 float 组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39146097/