javascript日期(),getTime()不是函数

2eafrhcq  于 2022-10-22  发布在  Java
关注(0)|答案(4)|浏览(179)

我正在尝试用javascript比较一些日期。
出于某种原因,我得到了“2012年5月1日星期二16:43:03 GMT+0900(JST)没有方法'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中失败。
我尝试过的屏幕截图:


小时


小时
所以我的问题是:
什么?
我必须使用ParseDate()吗?为什么这不起作用?

pgx2nnw8

pgx2nnw81#

尝试使用new关键字示例化一个新对象

var now = Date();

试试这个

var now = new Date();
wsewodh2

wsewodh22#

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

(new Date()).getTime()
zkure5ic

zkure5ic3#

这将使“now”作为变量类型作为日期:

var now = new Date();

这将让您从“现在”获得时间:

new Date(now).getTime();
i1icjdpr

i1icjdpr4#

这是有效的:dateX作为date类型的变量传入

fctDateToLong(dateX: Date|string|number): number 
  {
    return new Date(dateX).getTime() 
   }

我不能百分之百地确定为什么这样做有效,所以不会评论为什么。祝你好运
如果dateX是Date Type,也可以尝试此操作。

const newDate = new Date(dateX.toString()).getTime()

相关问题