在 GAS 中使用区域设置字符串方法显示逗号分隔的数字

Cod*_*Guy 1 google-apps-script

我需要显示用逗号分隔的数字,例如 120,456.02

我用js尝试了下面的方法,效果很好。但在应用程序脚本中,它会抛出非法基数异常

function toDec(n) {
    //return parseFloat(Math.round(n * 100) / 100).toFixed(2) + ' '; will display without comma
    return Number(parseFloat(Math.round(n * 100) / 100)).toLocaleString('en-US', {minimumFractionDigits: 2});
}
Run Code Online (Sandbox Code Playgroud)

有可用的解决方法吗?

小智 5

在 GAS 中toLocaleString只是 的别名toString,因此没有用。(来自 Rhino 的相关错误跟踪器项目,GAS 在其上运行。)

因此,我们必须在添加逗号或空格以每三位数字分组之后进行一些手动逗号插入:

var n = 123456.789;
var str = n.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');
Run Code Online (Sandbox Code Playgroud)

str现在在哪里123,456.79