javascript - AngularJS 将字符串数组转换为 float 组

标签 javascript html angularjs arrays floating-point

伙计们!我在将字符串数组转换为 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/

相关文章:

JavaScript 将前 5 个字符替换为 *

javascript - 如何在 Angular.js 中拆分字符串?

javascript - 如何在 ng-repeat 中使用 ng-switch 来编辑 JSON API 数据

javascript - 数据表激活单单元格编辑 onclick(第 2 部分)

javascript - 如何使用 JSBN 加密 Crypto-JS key ?

javascript - AngularJS:应用货币过滤器返回自定义过滤器的值

javascript - JQuery 淡入淡出滚动在 iOS 上无法正常工作

java - 在 gradle 构建期间删除部分代码

angularjs - 如何在 Azure 部署中指定不同的 api URL 与本地运行?

javascript - 使用动态变量更新 Angular 对象属性