sel*_*rai 142 javascript time date
我想将日期转换为时间戳,我的输入是26-02-2012
.我用了
new Date(myDate).getTime();
Run Code Online (Sandbox Code Playgroud)
它说NaN ..谁可以告诉如何转换它?
The*_*pha 169
var myDate="26-02-2012";
myDate=myDate.split("-");
var newDate=myDate[1]+","+myDate[0]+","+myDate[2];
alert(new Date(newDate).getTime());? //will alert 1330192800000
Run Code Online (Sandbox Code Playgroud)
更新:
var myDate="26-02-2012";
myDate=myDate.split("-");
var newDate=myDate[1]+"/"+myDate[0]+"/"+myDate[2];
alert(new Date(newDate).getTime()); //will alert 1330210800000
Run Code Online (Sandbox Code Playgroud)
演示(在Chrome,FF,Opera,IE和Safari中测试).
Ket*_*iya 46
试试这个函数,它使用Date.parse()方法,不需要任何自定义逻辑:
function toTimestamp(strDate){
var datum = Date.parse(strDate);
return datum/1000;
}
alert(toTimestamp('02/13/2009 23:31:30'));
Run Code Online (Sandbox Code Playgroud)
Dio*_*ode 22
var dtstr = "26-02-2012";
new Date(dtstr.split("-").reverse().join("-")).getTime();
Run Code Online (Sandbox Code Playgroud)
Jal*_*sem 21
这个重构的代码会做到这一点
let toTimestamp = strDate => Date.parse(strDate)
Run Code Online (Sandbox Code Playgroud)
这适用于所有现代浏览器,除了ie8-
如果你来这里是为了寻找当前时间戳
var date = new Date();
var timestamp = date.getTime();
Run Code Online (Sandbox Code Playgroud)
或者干脆
new Date().getTime();
//console.log(new Date().getTime());
Run Code Online (Sandbox Code Playgroud)
为了将 (ISO) 日期转换为Unix 时间戳,我最终得到的时间戳比需要的长 3 个字符,所以我的年份约为 50k...
我必须将它除以 1000:
new Date('2012-02-26').getTime() / 1000
这里有两个问题。首先,您只能在日期的实例上调用getTime。您需要将新的日期括在方括号中或将其分配给变量。
其次,您需要以正确的格式向它传递一个字符串。
工作示例:
(new Date("2012-02-26")).getTime();
Run Code Online (Sandbox Code Playgroud)
只是提醒
Date.parse("2022-08-04T04:02:10.909Z")
// 1659585730909
Date.parse(new Date("2022-08-04T04:02:10.909Z"))
// 1659585730000 (milliseconds are ignored)
Run Code Online (Sandbox Code Playgroud)
你只需要扭转你的日期数字,变化-
有,
:
new Date(2012,01,26).getTime(); // 02 becomes 01 because getMonth() method returns the month (from 0 to 11)
Run Code Online (Sandbox Code Playgroud)
在您的情况下:
var myDate="26-02-2012";
myDate=myDate.split("-");
new Date(parseInt(myDate[2], 10), parseInt(myDate[1], 10) - 1 , parseInt(myDate[0]), 10).getTime();
Run Code Online (Sandbox Code Playgroud)
PS UK语言环境在这里并不重要。
function getTimeStamp() {
var now = new Date();
return ((now.getMonth() + 1) + '/' + (now.getDate()) + '/' + now.getFullYear() + " " + now.getHours() + ':'
+ ((now.getMinutes() < 10) ? ("0" + now.getMinutes()) : (now.getMinutes())) + ':' + ((now.getSeconds() < 10) ? ("0" + now
.getSeconds()) : (now.getSeconds())));
}
Run Code Online (Sandbox Code Playgroud)