如何模彷moment.js对象,改变console.log印出来的字?

当我使用moment.js时,在Node.js v7的环境下

var moment = require('moment');
console.log(moment());

在console中会印出

moment("2017-06-23T09:06:56.216")

使用

console.log(typeof moment());

得知 moment()是一个object

有的时候,moment.js还会在console.log时加上一些提示字,例如在使用moment-timezone但却没指定第2个参数的timezone时

console.log(moment.tz('2013-06-01T00:00:00-04:00'));

在console会印出

Moment Timezone has no data for 2013-06-01T00:00:00-04:00. See http://momentjs.com
/timezone/docs/#/data-loading/.

moment.utc("2017-06-23T01:12:20.003+00:00")

以上,请问要如何设置一个javascipt object在console.log这个object时印出来的文字呢?

阅读 3.4k
3 个回答

因为重写了inspect方法

你可以试试在node下:

console.log({inspect: function () { return 'this is my value'}})

或者你去试试:

moment().inspect() // moment("2017-06-23T09:06:56.216")

重写toString方法就行了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题