如何在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
我怎么把它赋值给变量呢?
当前回答
简短而简单:
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
其他回答
试试这个
new Date().toTimeString().slice(0, 8);
or
new Date().toTimeString().split(" ")[0];
它应该会起作用。
使用javascript有效地获取和设置当前时间
我找不到一个完全符合我需要的解决方案。我想要简洁的代码,所以我想到了这个:
纯JAVASCRIPT
函数时间现在(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> <输入 id=“test1” 类型=“时间” 值=“10:40” />
更新
现在有足够的浏览器支持来简单地使用:toLocaleTimeString
对于html5类型时间,格式必须是hh:mm。
函数timeNow(i) { i.value = new Date()。toLocaleTimeString([],{小时:'2-digit',分钟:'2-digit'}); } <a onclick="timeNow(test1)" href="#">SET TIME</a> . <input id="test1" type="time" value="10:40" />
在jsfiddle上试试
试试这个:
var date = new Date();
var hour = date.getHours();
var min = date.getMinutes();
在ES6中一个简单的方法是这样做的,在你要求的格式(hh:mm):
const goodTime = ' ${new Date().getHours()}:${new Date().getMinutes()} '; console.log(因着);
(显然,控制台日志记录不是解决方案的一部分)
以下是我的做法:(希望能帮助到别人) 我正在做的是验证用户在HTML时间输入中输入的时间不是过去:
let inputTime = value; // from time input in html (06:29)
const splittedInputTime = inputTime.split(':');
let currentDate = new Date();
currentDate.setHours(splittedInputTime[0]);
currentDate.setMinutes(splittedInputTime[1]);
const finalInputTime = currentDate.toTimeString().split(" ")[0];
const currentTime = new Date().toTimeString().split(" ")[0];
// Returns a boolean (true/ false)
let validTime = finalInputTime >= currentTime;