Javascript中包含%的Excel公式

Javascript中包含%的Excel公式,javascript,excel,excel-formula,Javascript,Excel,Excel Formula,我正试图让下面的Excel sum在Javascript中工作 =H21*(1+H22)*(1+H23) H21是一个类似于6.4的基价 H22和H23为负百分比,如“-15%” H22和H23来自范围滑块,所以我有它们像'-15' 目前我有: let price = H21*(1+H22)*(1+H23); 添加%符号显然不起作用。为什么这在Excel中工作而不是在Javascript中工作?我如何在Javascript中重新考虑这一点。任何关于文档的线索都会非常好 百分比可以表示为0-1之

我正试图让下面的Excel sum在Javascript中工作

=H21*(1+H22)*(1+H23)

H21是一个类似于6.4的基价 H22和H23为负百分比,如“-15%”

H22和H23来自范围滑块,所以我有它们像'-15'

目前我有:

let price = H21*(1+H22)*(1+H23);

添加%符号显然不起作用。为什么这在Excel中工作而不是在Javascript中工作?我如何在Javascript中重新考虑这一点。任何关于文档的线索都会非常好

百分比可以表示为0-1之间的浮动,因此我认为您可以将百分比(H22+H23)除以100:

在JS中使用带有%符号的数字将不起作用,因为求和会通过删除任何无效的内容将它们转换为浮点数:

parseInt('15%') // 15

Excel看到了%并做了一些更聪明的事情(我以前不知道)。

为什么在Excel中而不是在Javascript中工作这就像说,为什么我必须在手动汽车中换档,而我不必在自动汽车中换档。百分比,每100的平均值,或低:除以100
H22/100
在Javascript中,
%
用于模-因此,Javascript
5%2
与Excel
=MOD(5,2)
相同,而在Excel
%
中表示“除以100并将常规格式更改为百分比格式”-所以Excel
2*15%
是Javascript的
2*15/100
Excel有点聪明,但不是完全聪明-
=10+15%
将输出
1015%
而不是
11.5
。但是,虽然Excel不知道如何处理permille符号(‰)或permyriad/基点(——),但您可以链接
%
符号:
=5%
0.05
=5%
0.0005
,这与基点相同(在金融中经常用于贷款/债券)@Chronocidal-不知道%%起作用-谢谢。但是为什么10+15%=11.5而不是10.15=1015%?@charleswillams如果你使用一个像样的计算器,那么“10+15%”被视为“10*1.15”-即“10+(10*15%)”。你会说比10%多15%是什么?@AdamHopkinson谢谢!是一种专注于Excel公式的方法。现在感觉有点简单。
parseInt('15%') // 15