【问题标题】:javascript Date().getTime() is not a functionjavascript Date().getTime() 不是函数
【发布时间】:2012-05-01 08:20:46
【问题描述】:

我正在尝试比较一些 javascript 中的日期。

由于某种原因,我收到“2012 年 5 月 1 日星期二 16:43:03 GMT+0900 (JST) has no method 'getTime'”

当然,strings don't have methods

我从回调中的这段代码开始,但它在创建var age 的行上的getTime() 失败:

for (var i = 0; i < array_of_usage_indices.length; i++) {
    store.get(array_of_usage_indices[i]['key'],function(may_need_gc) {
        if(may_need_gc) {
            var now = Date();
            var created = Date(may_need_gc['value']);
            var age = now.getTime()-created.getTime();
        }
    })
}

我已经把它删减了,所以我的示例页面实际上就是这样的:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>date test</title>

    </head>

<body>

<script type="text/javascript" charset="utf-8">
            var now = Date();
            alert(now.getTime());
            var t = Date().getTime();
</script>    
</body>
</html>

这在 Chrome 18.0.1025.168 和 Firefox 13.0 中失败。

我尝试过的截图:

所以我的问题:

wth?

我必须使用 ParseDate() 吗?为什么这不起作用?

【问题讨论】:

    标签: javascript date


    【解决方案1】:

    尝试使用new 关键字来实例化一个新对象 所以而不是这个

    var now = Date();
    

    试试这个

    var now = new Date();
    

    【讨论】:

    【解决方案2】:

    您需要使用new 运算符来创建日期对象。

    (new Date()).getTime()
    

    【讨论】:

    • 谢谢。我已经给 Parv 打了绿色检查,因为看起来你现在在积分上还可以。 ;-)
    【解决方案3】:

    这将使“现在”成为日期的变量类型:

    var now = new Date();
    

    这会让你从“现在”开始:

    new Date(now).getTime();
    

    【讨论】:

      猜你喜欢
      • 2011-02-07
      • 1970-01-01
      • 2020-08-23
      • 2011-02-10
      • 1970-01-01
      • 2020-12-08
      • 2010-09-26
      • 2011-06-02
      相关资源
      最近更新 更多