javascript - 在 REPL 中更改节点对象的表示
问题描述
我想让“时刻”对象表示更短,因为我有一个包含许多对象的数据结构,我希望我可以使其表示更紧凑。
例子:
node-repl> d = new Date()
2018-05-29T12:50:12.111Z
node-repl> m = moment(d)
=> VERY LONG THING IN OUTPUT
现在假设您有许多矩对象“m1”、“m2”……它们被传播到一个数据结构中,如 l = [“hello”、m1、“world”、m2、m3……]。阅读列表“l”变得困难。
我希望在 REPL 中默认将“时刻”对象打印为“时刻 DD-MM-YYYY”。
它应该与此类似,但我不知道如何使它正确。
moment.prototype.toString = function() {
var dd = this.format("DD-MM-YYYY");
var out = "moment-" + dd;
return out;
}
你有什么建议吗?
解决方案
我找到了解决方案,我不明白它是如何工作的,但它确实有效。
moment.prototype[util.inspect.custom] = function(depth, options) {
var tmp = this.format("DD-MM-YYYY");
tmp = `moment<${tmp}>`;
var out = options.stylize(tmp, 'special');
return out;
}
推荐阅读
- android - 亚行以退出代码 1 退出
- java - 如何在 Java 中使用 BufferedReader 在 .txt 文件中查找特定字符串
- java - 错误:由 OutputStream.flush() 引起的“nativeDrain 中没有错误”
- c# - 在一个时间点监听两个事件的方法的执行时间c#
- vue.js - 如何在 jsx 中使用 vue-matrial 表?
- java - 如何从android java String中提取子字符串?
- c++ - 成对展开可变参数模板包
- indexing - 正确存储/检索 termVector
- c# - Show() 方法不会在一秒钟前隐藏的图片框中显示 .gif
- python-3.x - 循环遍历 Pandas 中的分组列