首页 > 解决方案 > 将一个用逗号包裹的数字字符串更改为 parsefloat(例如 3.00)

问题描述

我正在提取一个在数字周围用逗号返回的值。我想将其转换为数字,然后稍后在我的代码中与另一个数字进行比较。但我似乎无法可靠地提取数字。

// Output from duration is ",3.000000,";
console.log('ffmpeg duration output: ', duration.toString('utf8'));
console.log('ffmpeg duration output with replace: ', duration.toString('utf8').replace(/^,/, ''));
console.log('ffmpeg duration output with parsefloat: ', duration.parseFloat);
console.log('ffmpeg duration output with parsefloat: ', parseFloat(duration.replace(',', ''));

期望输出:3.00(作为数字,有两位小数 [float])

标签: javascriptnode.jsjsonstringfloating-point

解决方案


简单的正则表达式应该用于取出,字符串并能够将字符串设置为parseFloat.

duration = duration.replace(/,/g, '');

这里的假设:duration是字符串所在的",3.000,"位置。否则,替换duration为该字符串所在的位置。


推荐阅读