【问题标题】:how to get only hours with am and pm in java script [duplicate]如何在javascript中仅使用am和pm获得小时数[重复]
【发布时间】:2019-01-13 04:37:42
【问题描述】:

我已经编写了代码来获取上午和下午的时间,但是却得到了错误的时间,例如下午 13 点和下午 14 点

预计营业时间 - 下午 1 点、下午 2 点...

var d = new Date();
var h1 = d.getHours();
h1 = getTime(h1);

function getTime(number) {
  var strTime = "";
  var ampm = number >= 12 ? 'pm' : 'am';
  if (number == 0) {
    strTime = 12 + " am";
  }
  if (number != 0) {
    strTime = number + " " + ampm;
  }
  return strTime;
}

console.log(h1);

【问题讨论】:

    标签: javascript


    【解决方案1】:

    number != 0 时你需要做strTime = (number % 12) +" "+ ampm;。使用模数运算符将为您提供正确的输出,因为在 12 之后我们需要 12、...等等。

    var d = new Date();
    var h1 = d.getHours();
    h1 = getTime(h1);
    
    function getTime(number) {
      var strTime = "";
      var ampm = number > 12 ? 'pm' : 'am';
      if (number == 0) {
        strTime = "12 am";
      } else if (number == 12) {
        strTime = "12 pm";
      } else {
        strTime = (number % 12) + " " + ampm;
      }
      return strTime;
    }
    console.log(h1);

    【讨论】:

    • 这将导致0 pm
    • 是的,下午 12 点,下午 0 点。
    • @krishnamohan 现在没有。没有理由拒绝投票
    • @AnkitAgarwal 现在改为12pm 它将显示12am
    • @Durga 哎呀。好像我添加了错误的条件。现在可以了:)
    猜你喜欢
    • 2022-10-07
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2012-08-31
    • 2011-03-25
    • 2016-03-17
    相关资源
    最近更新 更多