如何在JavaScript中获得当前时间并在时间选择器中使用它?

我尝试了var x = Date(),得到:

2012年5月15日星期二05:45:40 GMT-0500

但我只需要现在的时间,比如05:45

我怎么把它赋值给变量呢?


当前回答

const date = date ().slice(16,21); console.log(日期);

其他回答

Date.toLocaleTimeString()选项

Date.toLocaleTimeString()函数可以接收一个选项参数来格式化输出

以下是一些可用的选项

new Date().toLocaleTimeString([], { timeStyle: "full" })   // 4:43:58 AM Pacific Standard Time
new Date().toLocaleTimeString([], { timeStyle: "long" })   // 4:43:58 AM PST
new Date().toLocaleTimeString([], { timeStyle: "medium" }) // 4:43:58 AM
new Date().toLocaleTimeString([], { timeStyle: "short" })  // 4:43 AM

或者你可以用这些值指定小时、分钟和秒的表示形式:

“数字”(例如,1) “2位数”(例如,01)

new Date().toLocaleTimeString([], { hour: '2-digit', minute: "2-digit" }) 
// 04:43 AM

或者使用hour12: true或false设置12小时时间

更多细节请看 Date.toLocaleTimeString()参数 Intl.DateTimeFormat()选项

试试这个:

var date = new Date();
var hour = date.getHours();
var min = date.getMinutes();

Try

new Date().toLocaleTimeString().replace("/.*(\d{2}:\d{2}:\d{2}).*/", "$1");

Or

new Date().toTimeString().split(" ")[0];

简短而简单:

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

你的意思是:

var d = new Date();
var curr_hour = d.getHours();
var curr_min = d.getMinutes();