为什么新的Date()返回一个字符串,但包含更多的函数?

时间:2015-08-11 17:46:25

标签: javascript console.log

执行javafx.scene.shape时会返回一个类似new Date()

的字符串

当我使用Tue Aug 11 2015 14:42:04 GMT-0300 (Hora oficial do Brasil)时,它会返回typeof new Date(),直到这一点为止

但为什么我不能在Chrome控制台中显示您的属性和功能,但我可以访问他们的?

执行时:

object

它会返回var date = new Date(); console.log(date); ,为什么不返回Tue Aug 11 2015 14:42:04 GMT-0300 (Hora oficial do Brasil)

@taxicala

我试过创建一个fallowing类:

Date {....}

如何创建类似function teste() { return 'Hello World'; } var t = new teste(); typeof t; // "object" console.log(t); // return 'teste{}' 的类(函数)?

2 个答案:

答案 0 :(得分:6)

因为console.log会调用date.toString()

答案 1 :(得分:2)

它返回一个日期对象 - 但是每当你隐式地将它调用到字符串时,发生在console.log中,或者当与另一个字符串组合时,调用toString()方法返回你的String

var obj = { toString: function toString() { return 'my object'; } };