如何在 JavaScript 中获取当前时间并在时间选择器中使用它?
我尝试var x = Date()
并得到:
2012 年 5 月 15 日星期二 05:45:40 GMT-0500
但我只需要当前时间,例如, 05:45
如何将其分配给变量?
如何在 JavaScript 中获取当前时间并在时间选择器中使用它?
我尝试var x = Date()
并得到:
2012 年 5 月 15 日星期二 05:45:40 GMT-0500
但我只需要当前时间,例如, 05:45
如何将其分配给变量?
var d = new Date("2011-04-20T09:30:51.01");
d.getHours(); // => 9
d.getMinutes(); // => 30
d.getSeconds(); // => 51
或者
var d = new Date(); // for now
d.getHours(); // => 9
d.getMinutes(); // => 30
d.getSeconds(); // => 51
简短而简单:
new Date().toLocaleTimeString(); // 11:18:48 AM
//---
new Date().toLocaleDateString(); // 11/16/2015
//---
new Date().toLocaleString(); // 11/16/2015, 11:18:48 PM
4 小时后(使用 milisec:sec==1000):
new Date(new Date().getTime() + 4*60*60*1000).toLocaleTimeString(); // 3:18:48 PM or 15:18:48
2天前:
new Date(new Date().getTime() - 2*24*60*60*1000).toLocaleDateString() // 11/14/2015
我找不到完全满足我需要的解决方案。我想要干净而小巧的代码,所以我想出了这个:
(在 master.js 中设置一次并在需要时调用。)
纯Java脚本
function timeNow(i) {
var d = new Date(),
h = (d.getHours()<10?'0':'') + d.getHours(),
m = (d.getMinutes()<10?'0':'') + d.getMinutes();
i.value = h + ':' + m;
}
<a onclick="timeNow(test1)" href="#">SET TIME</a>
<input id="test1" type="time" value="10:40" />
更新
现在有足够的浏览器支持来简单地使用: toLocaleTimeString
对于html5类型time
,格式必须是hh:mm
.
function timeNow(i) {
i.value = new Date().toLocaleTimeString([], {hour: '2-digit', minute:'2-digit'});
}
<a onclick="timeNow(test1)" href="#">SET TIME</a>
<input id="test1" type="time" value="10:40" />
尝试
new Date().toLocaleTimeString().replace("/.*(\d{2}:\d{2}:\d{2}).*/", "$1");
或者
new Date().toTimeString().split(" ")[0];