如何获取12小时内的时间和日期格式?

How To Get Time And Date Format In 12 Hour?

我想要 12 小时格式的日期和时间。

function view_users(id)
{
  var td = data.CreatedOn;
  var dateTime = new Date(td*1000);
  var Created = dateTime.toString();           
  $('#CreatedOn').text(Created);
}

现在我正在关注输出。

Created:Fri Jan 11 2019 09:21:13 GMT+0530 (India Standard Time)

转换时间的方法有很多种。 我想尝试用我的方式回答:

var now = new Date();
var year = now.getFullYear();
var month = now.getMonth()+1;
var date = now.getDate();
var hours = now.getHours();
var minutes = now.getMinutes();
var second = now.getSeconds();
var times ='';

if(hours>12){
  times = '0'+hours%12 +':'+minutes+':'+second+' PM'
}
else{
  times = '0'+hours%12 +':'+minutes+':'+second+' AM'
}

console.log(year+'-'+month+'-'+date+' '+times);

你可以换个方式,不是最佳答案还请见谅

你可以试试这个

 function format_time(date_obj) {
      // formats a javascript Date object into a 12h AM/PM time string
      var hour = date_obj.getHours();
      var minute = date_obj.getMinutes();
      var amPM = (hour > 11) ? "pm" : "am";
      if(hour > 12) {
        hour -= 12;
      } else if(hour == 0) {
        hour = "12";
      }
      if(minute < 10) {
        minute = "0" + minute;
      }
      return hour + ":" + minute + amPM;
    }

如果您不需要太多日期格式,并且不需要支持 IE11 以下的任何内容,则以下最小示例应该可以。

const date = new Date();

console.log(date.toLocaleString());

如果您不喜欢这样,您可能还需要输入选项:

date.toLocaleString('en-US', { hour12: true })

参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString