将dd-mm-yyyy hr:min:sec转换为unixtime

时间:2013-11-29 22:43:39

标签: javascript date format unix-timestamp

我的日期字符串格式为dd-mm-yyyy hr:min:sec(24小时格式的时间)。如何将此字符串转换为unix时间。我在php中知道如果我写time()给我unixtime。我试图使用javascript从日期字符串中获得相同的结果。

    var expTime = document.getElementById("expiryDT").value; 
    //the value inside this element is the date with (dd-mm-yyyy hr:min:sec) format.
var todayUnixTime = Math.round(+new Date()/1000);
//this gives me the unixtime in seconds for today, ready to pass into php

如何将字符串expTime转换为javascript中的unixtime,以便我可以将其传递给php;

var expTime = String(document.getElementById("expiryDT").value);

http://jsfiddle.net/N4T5h/2/

5 个答案:

答案 0 :(得分:1)

问题是Date无法识别您的日期格式(dd-mm-yyyy hr:min:sec)。使用有效的RFC2822或ISO 8601日期格式,或使用带有数字参数的其他形式的Date构造函数:

new Date(year, month [, day, hour, minute, second, millisecond])

http://jsfiddle.net/N4T5h/3/

答案 1 :(得分:1)

Jinsoul你是对的格式有错误试试这个: https://stackoverflow.com/a/20570223/1717821

答案 2 :(得分:0)

var unixTime = Math.round(new Date('January 21,2013 23:14:12').getTime()/1000);

答案 3 :(得分:-1)

尝试:

 var someDate = new Date(Date.parse(expTime));

答案 4 :(得分:-1)

使用getTime()方法 这是一个演示:http://jsfiddle.net/nn007/N4T5h/