【发布时间】:2021-03-12 06:13:24
【问题描述】:
为什么要在 Date() 中使用关键字 new 将变量定义为对象?随着时间的推移,我意识到如果我不将变量定义为对象,那么我就不能使用 JavaScript Get Date Methods for Date(),但为什么呢?当我写 typeof Date() 它返回一个字符串。如果它返回一个字符串,那么就像写 var d = new String("October 13, 2014 11:13:00") 但如果我们使用其中一种方法,这个日期将只适用于
var d = new Date();
document.getElementById("demo").innerHTML = d.getFullYear();
虽然var d = new Date(); 和var d = new String(); 都返回字符串,但该方法仅适用于Date()。在这两种情况下,“2014 年 10 月 13 日 11:13:00”字符串都保存在作为对象的变量中,这有点令人困惑。
为什么我只能在new Date() 而不是new String("October 13, 2014 11:13:00") 创建的日期调用像getFullYear() 这样的方法?
【问题讨论】:
-
这里对“new”关键字有很好的解释:stackoverflow.com/questions/1646698/…
-
这能回答你的问题吗? What is the 'new' keyword in JavaScript?
-
如果没有
new,Date被作为一个函数调用,它返回一个字符串。有了它,正在制作一个新对象。 -
字符串是
Date表示之一。 Date 对象包含更多表示和转换它的方法。阅读规范以更好地理解:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… -
我已编辑您的问题,以便在末尾添加问题摘要。我是否正确理解了这个问题?如果没有,请随时对您的问题进行编辑以进一步澄清。
标签: javascript object variables methods