1

与えられたスプレッドシートと同じ結果を 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 関数の使用でどこが間違っているかを知っている人はいますか?

4

2 に答える 2

2

間違っているのは、演算子の優先順位だけです。これを試して:

 B2 * Math.pow(1 + B3, B6)

それは私に53913.95661331625を与えます

Excel は の^前に演算子を評価しているため、 の*ように見えますが(A*B)^C、実際にはA*(B^C)

于 2011-08-22T09:34:51.490 に答える
0
var B2 = 40000; 
var B3 =  1/100; 
var B6 = 30;

var result = B2*Math.pow(1 + B3,B6);
于 2011-08-22T09:36:13.487 に答える