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

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

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

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

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


当前回答

在ES6中一个简单的方法是这样做的,在你要求的格式(hh:mm):

const goodTime = ' ${new Date().getHours()}:${new Date().getMinutes()} '; console.log(因着);

(显然,控制台日志记录不是解决方案的一部分)

其他回答

试试这个:

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

这- - - - - -

var x = new Date(); 
var h = x.getHours(); 
var m = x.getMinutes(); 
var s = x.getSeconds(); 

so-

 x = date
h = hours
m = mins
s = seconds

以下是我的做法:(希望能帮助到别人) 我正在做的是验证用户在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;

简单的函数,以获得日期和时间分离,并与时间和日期HTML输入兼容的格式

function formatDate(date) {
  var d         = new Date(date),
      month = '' + (d.getMonth() + 1),
      day   = '' + d.getDate(),
      year  = d.getFullYear();

  if (month.length < 2) month = '0' + month;
  if (day.length < 2) day = '0' + day;

  return [year, month, day].join('-');
}

function formatTime(date) {
        var hours   = new Date().getHours() > 9 ? new Date().getHours() : '0' + new Date().getHours()
        var minutes = new Date().getMinutes() > 9 ? new Date().getMinutes() : '0' + new Date().getMinutes()

        return hours + ':' + minutes
}

赋值给变量并显示。

time = new Date();

var hh = time.getHours();
var mm = time.getMinutes();
var ss = time.getSeconds() 

document.getElementById("time").value = hh + ":" + mm + ":" + ss;