我的文档中有一些日期,并试图对其进行操作。我期望JavaScript支持标准的日期方法,例如toISOString(),但令我惊讶的是,我得到了一个错误Database command 'mapreduce' failed: (assertion: 'invoke failed: JS Error: TypeError: entry.start.toISOString is not a function nofile_b:0'; assertionCode: '9004'; errmsg: 'db assertion failure'; ok: '0.0').

如何找出Map Reduce运行时环境支持的功能?

最佳答案

我发现调试map reduce的最简单方法是分解组件并使用控制台。

不幸的是,似乎在嵌入式Spidermonkey引擎中没有toISOString

> d = new Date()
> d.to<tab-complete>
  d.toDateString(        d.toLocaleString(      d.toTimeString(
  d.toGMTString(         d.toLocaleTimeString(  d.toUTCString(
  d.toLocaleDateString(  d.toString(            d.tojson(


因此,您必须生成自己的,我通过使用json和使用substr作弊:

> d.tojson().substr(9, 24)
  2012-07-26T09:42:11.403Z

09-20 23:13