我在让我的 JavaScript 生成与提供给我的电子表格相同的结果时遇到了一些困难。
公式如下:
=B$2*(1+B$3)^B$6
在哪里
B2 = 40000
B3 = 1%
B6 = 30
四舍五入后的结果是53,914。
我的 JavaScript 如下:
var B2 = 40000;
var B3 = 1/100;
var B6 = 30;
var result = Math.pow(B2 * (1 + B3),B6);
我总是得到1.5539639994483203e+138的结果
任何人都知道如何让我的 JavaScript 产生与 Excel 公式相同的结果,或者我在使用 Math.pow 函数时哪里可能出错了?
最佳答案
只是您的运算符优先级是错误的。试试这个:
B2 * Math.pow(1 + B3, B6)
这给了我 53913.95661331625
Excel 在 *
之前计算 ^
运算符,因此虽然它看起来像 (A*B)^C
,但实际上A*(B^C)
关于javascript - 将 JavaScript Math.pow 用于 Excel 公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7145410/