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

时间:2013-01-01 21:35:51

标签: javascript

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

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

1 个答案:

答案 0 :(得分:3)

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

var Demo = function(){};
Demo.prototype.toString = function(){ return "Demo string"; };

var test = new Demo();
console.log(test); // results in "Demo string"

请注意,这可能会稍微改变代码的行为,因为如果左侧和右侧的类型不同,非类型安全比较运算符==将在某些情况下使用此函数:< / p>

if(test == "Demo String"){
    console.log("Equal!");
}
if(test !== "Demo String"){
    console.log("But not same type!");
}

然而,似乎console.log hasn't been standardized yet,所以没有统一的解决方案。请注意,您仍然可以使用console.log(test + "")来触发toString的调用。