有什么方法可以影响console.log提供的自定义对象吗?我试图覆盖customObject.prototype.toString方法,但这没有用。
有任何想法吗?
在node.js中,console.log
调用util.inspect
每个参数时不使用格式占位符。因此,如果inspect(depth, opts)
在对象上定义方法,则将调用该方法以获取对象的自定义字符串表示形式。
例如:
function Custom(foo) {
this.foo = foo;
}
Custom.prototype.inspect = function(depth, opts) {
return 'foo = ' + this.foo.toUpperCase();
};
var custom = new Custom('bar');
console.log(custom);
输出:
foo = BAR
或使用课程:
class Custom {
constructor(foo) {
this.foo = foo;
}
inspect(depth, opts) {
return 'foo = ' + this.foo.toUpperCase();
}
}
var custom = new Custom('bar');
console.log(custom);
根据这个留档, 这些对象中的每一个的字符串表示都按照列出的顺序附加在一起并输出。 同样根据答案 x将对象x强制为一个字符串,即[object object]: 所以,我的问题是 如果我这样做 因此,在第一种情况下,它只打印对象(不调用方法)。 但是在第二种情况下,它不强制而是简单地打印原始值。为什么会这样呢? 哪种方法不支持调用以打印对象? 请注意-这不是这个问题的重复。
问题内容: 这段代码: 在Chrome中产生以下输出: 这是为什么? 问题答案: 通过检查对象以异步方式进行。控制台同步接收到对对象的引用,但在对象被扩展之前不会显示对象的属性(在某些情况下,取决于浏览器以及日志发生时是否打开了开发工具)。如果在控制台中检查对象之前已对其进行了修改,则显示的数据将具有更新的值。 例如,Chrome会在一个方框中显示一点,悬停时说: 记录时左边的对象值已被快照,下面
我正在努力找出如何使用Java流从对象值等于x的自定义对象列表中收集自定义对象。 这没有编译,但我不认为我离得很远--有人能指出我在哪里出错吗?
问题内容: 说我的课很简单 我希望将此类s 的集合存储在People类的属性中,该属性是类型为Person的数组 也许我做到这一点如下 问题:请问我如何检查people.list是否包含实例alex? 我很想尝试的简单尝试 称一个错误 问题答案: 有两个功能: 编译器在抱怨是因为编译器知道不是,因此需要一个谓词,但不是谓词。 如果阵列中的人员是(不是),则可以使用: 由于它们不相等,因此可以将第二
我可以为UILable和UIButton的ios中的自定义字体设置Kerning吗? 下面的方法不起作用。字距调整适用于系统字体,但不适用于自定义字体。有人可以帮助解决问题吗?
问题内容: 下面的代码将控制台日志打印到页面上。它记录来自服务器的获取和响应,例如: 与其将这些内容显示在页面上,我不希望计算每个响应和请求,因此您会看到一个从1开始到结束为止的数字,可以是任何数字。这是为了向用户显示正在发生的事情,而没有向他们显示所有响应并获取数据。 和html: 问题答案: 如果您只想覆盖以打印响应计数,则应该这样做,但这将增加任何呼叫的计数。 如果您希望依靠响应而不是所有控