为什么我从这个XIRR功能获得NaN?

时间:2016-12-02 12:07:13

标签: javascript xirr

这一个让我崛起。

更新:在产生NaN的jsfiddle中组装:https://jsfiddle.net/eqcww2y7/6/

我正在使用此XIRR功能:https://gist.github.com/ghalimi/4669712

进入该功能,我发送一对简单的数组 - 4个日期,4个现金流值。

var dates = [
  "2016-01-01",
  "2016-02-01",
  "2016-03-01",
  "2016-04-01",
];

var values = [
  -1000000,
  0,
  0,
  750000
];

console.log('dates', dates);
console.log('values', values);
console.log(XIRR(values, dates, 0.1));

该函数依赖于momentjs,这不会导致任何问题 - 函数内的console.log()显示日期正在被正确解析。

上面的代码片段返回NaN,它应该返回-0.68。如果我通过Excel运行那些完全相同的值:

Testing XIRR in Excel

有人能发现这个问题吗?它是否具有该功能,我发送了错误的值吗?