Javascript 在点后用2位小数拆分字符串

Javascript 在点后用2位小数拆分字符串,javascript,Javascript,我有下面的字符串 var string = '14,12.1545'; 在上面的变量中,我需要在点后取两个小数。如何用圆点分割变量 从纯字符串操作的角度来看,预期输出为14,12.15:将字符串分为两部分,一部分在点之前,另一部分在点之后。使用slice仅选择after字符串的前两个字符,然后将它们放回一起 函数translateString(输入){ 常量[beforeDot,afterDot]=input.split('.'); 常数afterDotTrimmed=afterDot.sl

我有下面的字符串

var string = '14,12.1545';
在上面的变量中,我需要在点后取两个小数。如何用圆点分割变量


从纯字符串操作的角度来看,预期输出为
14,12.15

:将字符串分为两部分,一部分在点之前,另一部分在点之后。使用
slice
仅选择after字符串的前两个字符,然后将它们放回一起

函数translateString(输入){
常量[beforeDot,afterDot]=input.split('.');
常数afterDotTrimmed=afterDot.slice(0,2);
返回前点“+”.+后点修剪;
}
console.log(translateString('14,12.1545'));
控制台日志(translateString('14,12.1'));

控制台日志(translateString('14,12.154534534534')从纯字符串操作的角度来看:将字符串分为两部分,一部分在点之前,一部分在点之后。使用
slice
仅选择after字符串的前两个字符,然后将它们放回一起

函数translateString(输入){
常量[beforeDot,afterDot]=input.split('.');
常数afterDotTrimmed=afterDot.slice(0,2);
返回前点“+”.+后点修剪;
}
console.log(translateString('14,12.1545'));
控制台日志(translateString('14,12.1'));

控制台日志(translateString('14,12.154534534534')将其转换为数组并进行更改

let str='14,12.1123,3.1415926554';
设arr=str.split(“,”);
设n=arr.map(a=>a.indexOf('.')!=-1?parseFloat(a).toFixed(2):parseFloat(a));

console.log(n.join(“,”)将其转换为数组并进行更改

let str='14,12.1123,3.1415926554';
设arr=str.split(“,”);
设n=arr.map(a=>a.indexOf('.')!=-1?parseFloat(a).toFixed(2):parseFloat(a));

console.log(n.join(“,”)您可以从前面的答案中借用合适的数字格式化程序,如下所示:

然后您可以将文本更改为数字并格式化。我假设你想从一半向上取整,如下所示:

//问题149055的合适答案
Number.prototype.format=函数(n,x){
变量re='\\d(?=(\\d{'+(x | | 3)+'})+'+(n>0?'\\.:'$')+')';
返回这个.toFixed(Math.max(0,~~n)).replace(新的RegExp(re,'g'),'$&');
};
变量字符串='14,12.1545'
var number=parseFloat(string.replace(/,/g,”))
console.log(number.format(2,2))/->14,12.15
字符串='99,99.9999'
number=parseFloat(string.replace(/,/g,”))

console.log(number.format(2,2))/->1,00,00.00
您可以从前面的答案中借用合适的数字格式化程序,如下所示:

然后您可以将文本更改为数字并格式化。我假设你想从一半向上取整,如下所示:

//问题149055的合适答案
Number.prototype.format=函数(n,x){
变量re='\\d(?=(\\d{'+(x | | 3)+'})+'+(n>0?'\\.:'$')+')';
返回这个.toFixed(Math.max(0,~~n)).replace(新的RegExp(re,'g'),'$&');
};
变量字符串='14,12.1545'
var number=parseFloat(string.replace(/,/g,”))
console.log(number.format(2,2))/->14,12.15
字符串='99,99.9999'
number=parseFloat(string.replace(/,/g,”))

console.log(number.format(2,2))/->1,00,00.00
您的问题不清楚为什么要拆分?为什么结果是一个字符串?它看起来有点像这个问题:@NinaScholz最后我只想在点后取两个小数。这就是为什么我认为分裂你的问题不清楚为什么分裂?为什么结果是一个字符串?它看起来有点像这个问题:@NinaScholz最后我只想在点后取两个小数。这就是为什么我想分开