Javascript 添加用户输入而不舍入(Google应用程序脚本)
当用户添加数字并返回结果时,我将用户输入添加到UI中。输入是货币,所以我需要执行两位小数,而不是四舍五入 下面是我的代码示例:Javascript 添加用户输入而不舍入(Google应用程序脚本),javascript,add,rounding,google-apps-script,Javascript,Add,Rounding,Google Apps Script,当用户添加数字并返回结果时,我将用户输入添加到UI中。输入是货币,所以我需要执行两位小数,而不是四舍五入 下面是我的代码示例: function ceiling2(number) { var ceiling2; return ceiling2 = Math.ceil(number*100)/100; } //Totals function lD23Total (e){ var app = UiApp.getActiveApplication(); var tB1v = p
function ceiling2(number) {
var ceiling2;
return ceiling2 = Math.ceil(number*100)/100;
}
//Totals
function lD23Total (e){
var app = UiApp.getActiveApplication();
var tB1v = parseInt(e.parameter.TextBox1);
var tB9v = parseInt(e.parameter.TextBox9);
var tB17v = parseInt(e.parameter.TextBox17);
var tB25v = parseInt(e.parameter.TextBox25);
var tB33v = parseInt(e.parameter.TextBox33);
var tB41v = parseInt(e.parameter.TextBox41);
var tB49v = parseInt(e.parameter.TextBox49);
var lD23 = app.getElementById("LabelD23").setStyleAttribute('fontWeight','bold');
var lD23T = tB1v + tB9v + tB17v + tB25v + tB33v + tB41v + tB49v;
lD23.setText("$ " + ceiling2(lD23T));
var app = UiApp.getActiveApplication();
app.close();
return app;
}
目前它返回一个四舍五入的数字
我很感激你的建议
Jon函数parseInt将值转换为整数,并将值放在小数点后。改用parseFloat。我认为你的函数很好。。。 如果删除parseInt并用Eric建议的ParseFloat或数字替换它,它应该可以工作。。。 如果不是,那么问题可能来自数字的书写方式: 如果使用264567,则应使用26.4567,并用点作为分隔符,以代替逗号 你能试着通知我们吗? 当做 哔叽 或者,您可以在发送到函数之前使用此选项:
var newnumber=Number(number.toString().replace(",","."));// convert to string, replace comma with dot and set as number again.
在这两种情况下,您的功能都会起作用