设计一个Javascript对象,在每个新的Date()中作为字符串输出到console.log

Design a Javascript object to output to console.log as a string as per new Date()

本文关键字:Date 字符串 log console 输出 一个 Javascript 对象      更新时间:2023-09-26

console.log(new Date());如何在控制台上显示字符串?

我如何在我的对象中模仿这种行为?

在对象的原型中提供一个.toString()方法:

var Demo = function(){};
Demo.prototype.toString = function(){ return "Demo string"; };
var test = new Demo();
console.log(test); // results in "Demo string"
请注意,这可能会稍微改变代码的行为,因为非类型安全比较操作符==将在某些情况下使用此函数,如果左侧和右侧不是同一类型:
if(test == "Demo String"){
    console.log("Equal!");
}
if(test !== "Demo String"){
    console.log("But not same type!");
}

然而,console.log似乎还没有标准化,所以没有统一的解决方案。注意,您仍然可以使用console.log(test + "")来触发toString的调用。