我想知道在控制台中打印对象时的幕后情况(如图中所示的情况)。
如何在对象内部定义一个特殊的函数来打印我自己的代码而不是对象的所有属性(相当于Objective-C中的toString)?例如,如果我在控制台中评估a
,我想只打印字符串“hello”而不是所有{one: 1, two: 2, hello: "hello"}
。
我可以在不使用console.log()或类似功能的情况下完成吗?
答案 0 :(得分:1)
好吧,我不确定这是不是你的问题,但是你总是可以覆盖对象的toString()方法。
var a = {a:"something", hello:"hello", toString:function(){console.log(this.hello)}};
a.toString() // prints hello
希望有所帮助!