f8g

少数点以下

1.001-1の計算。Excelはこんな風。

var xlApp = WScript.CreateObject("Excel.Application");
var xl = WScript.CreateObject("Excel.Sheet");
var sheet = xl.Application.Workbooks(1).Worksheets(1);
sheet.Cells(1,1).Value = 1.001-1;
sheet.Cells(2,1).Value = "=1.001-1";
JScript 0.0009999999999998898
SpiderMonkey 0.0009999999999998899
Excel 0.0009999999999998898

JScriptExcelは結果が同じかよ。試しにExcelに手入力で入れてみたけどやっぱ同じ。なんてこった、Excelじゃ小数点以下15か20桁ぐらいで誤差が生じてしまうじゃないか。Excel使えねえ!