Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在这个特定函数中,如何使用JS或JQuery向字符串添加千位分隔符?_Javascript_Jquery - Fatal编程技术网

Javascript 在这个特定函数中,如何使用JS或JQuery向字符串添加千位分隔符?

Javascript 在这个特定函数中,如何使用JS或JQuery向字符串添加千位分隔符?,javascript,jquery,Javascript,Jquery,我想在下面函数的输出中添加1000个分隔符(;)。我正在从事的项目中有15个非常类似的功能。所有这些都需要toFixed()功能。我需要能够处理输出中显示的十进制数。我是编程和JS新手!我尝试使用在堆栈溢出上找到的所有类似解决方案来解决这个问题,但还不能单独解决这个问题。你能提供一个解决方案,将与下面的功能。谢谢 function changePictoryTaleYearRevenuesOutput(avg_number_spots, inv_cal_monthly_vps, avg_pric

我想在下面函数的输出中添加1000个分隔符(;)。我正在从事的项目中有15个非常类似的功能。所有这些都需要toFixed()功能。我需要能够处理输出中显示的十进制数。我是编程和JS新手!我尝试使用在堆栈溢出上找到的所有类似解决方案来解决这个问题,但还不能单独解决这个问题。你能提供一个解决方案,将与下面的功能。谢谢

function changePictoryTaleYearRevenuesOutput(avg_number_spots, inv_cal_monthly_vps, avg_price_per_vps){
    var pictorytale_year_revenues = avg_number_spots * inv_cal_monthly_vps * avg_price_per_vps * ((12 / 1000000) / 0.771145238184416);
    $("#pictorytale_year_revenues").html(pictorytale_year_revenues.toFixed(0));
}

您可以反转字符串并使用正则表达式,然后再像这样反转:

var mySeparatorRegex = /\d\d\d(?=\d)/g;
var myString = ...;
var myReversedString = myString.reverse();
var myReversedNewString = myReversedString.replace(mySeparatorRegex, function(val) {
  return val + ";";
}
var newString = myReversedNewString.reverse();
将执行此操作,您可以设置精度,或将其转换为货币表示形式

千位分隔符因地区(国家)而异
你提到
但对我来说,在美国英语中它是一个逗号

Intl.NumberFormat只需指定区域设置即可使用正确的分隔符

您可以提前创建一个(或多个)格式化程序,也可以根据需要创建它们

const en_formatter=new Intl.NumberFormat('en-US',{最大有效位数:8,最大分数位数:3});
const en_currency=new Intl.NumberFormat('en-US',{style:'currency',currency:'USD'});
let值=54321.123;
let formatted=en_formatter.format(值);
console.log(格式化);
let currency=en_currency.format(值);

控制台日志(货币)
您是否考虑过使用JS中的内置方法根据地区设置数字格式?