我在Google App Maker中有一个表,带有两个数字和一个结果:result = number1 / number2
Number1的值为datasource.item.Number1#formatNumber('#.00')
Number2的值为datasource.item.Number2#formatNumber('#.00')
结果为(@datasource.item.Number1/@datasource.item.Number2)#formatNumber('#.00')
但是,当我运行此应用程序时,出现此错误:
语法错误:返回时未终止的语句 (_arg0 / _arg1)#formatNumber('#。00')
我希望该结果显示在表格中,但只有2位小数。
我该怎么做?
答案 0 :(得分:1)
首先让我们了解错误的原因。在Javascript中,有一个名为 ternary operator 的运算符。
条件(三元)运算符是唯一的JavaScript运算符 需要三个操作数。此运算符经常用作 if语句的快捷方式。
AppMaker认为您正在放置三元运算符,并试图提示您语法不正确,因此您会看到该错误。
现在,我们已经了解了错误,让我们专注于您的需求。因此,您想使用绑定转换器将结果值格式化为仅显示两个小数。 #formatNumber绑定转换器的问题在于,它期望一个原始值 double ,并且您要提供一个计算结果为数字的表达式,这不一样。
幸运的是,javascript有一些内置方法可以帮助您实现这一目标。对于这种情况,我会使用 toFixed() 方法。
toFixed()方法使用定点表示法格式化数字。
因此,您要做的就是将绑定表达式更改为以下内容:
(@datasource.item.valueOne/@datasource.item.valueTwo).toFixed(2)