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

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

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

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

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


当前回答

看看这些Date方法…

更大字符串- https://开发者.mozilla.org/en- us/web /javascrips/web/javascript/javascript / global_objects/date/愚蠢的字符串 totime弦- https://开发者.mozllla.org/en - us/docs/web/javascrips/web/javascript/com// global_objects/date/totimeststststststg

其他回答

使用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上试试

Try

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

Or

new Date().toTimeString().split(" ")[0];
getTime() {
      let today = new Date();
      let h = today.getHours();
      let m = today.getMinutes();
      let s = today.getSeconds();
      h = h < 10 ? "0" + h : h;
      m = m < 10 ? "0" + m : m;
      s = s < 10 ? "0" + s : s;
      let time = h + ":" + m + ":" + s;
      return time;
    },

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

var hours = date.getHours();
        var minutes = date.getMinutes();
        var ampm = hours >= 12 ? 'pm' : 'am';
        hours = hours % 12;
        hours = hours ? hours : 12; // the hour '0' should be '12'
        minutes = minutes < 10 ? '0'+minutes : minutes;
        var strTime = hours + ':' + minutes + ' ' + ampm;
        console.log(strTime);
        $scope.time = strTime;

        date.setDate(date.getDate()+1);
        month = '' + (date.getMonth() + 1),
        day = '' + date.getDate(1),
        year = date.getFullYear();
        if (month.length < 2) month = '0' + month;
        if (day.length < 2) day = '0' + day;
        var tomorrow = [year, month, day].join('-');
        $scope.tomorrow = tomorrow;