【问题标题】:How to remove 00 in timezone moment.js如何在时区 moment.js 中删除 00
【发布时间】:2021-07-23 10:29:17
【问题描述】:

我想在下午 1:00 删除 00 我拥有的价值,

startTime = '1:00 PM' || '2:30 PM'
endTime = '10:30 PM' || '2:30 PM'

eg : 1:00 PM - 2:00 PM --> output(1 PM - 2 PM) // need to remove 00 in this case
eg : 1:30 PM - 2 PM --> output(1:30 PM - 2 PM) // remove 00 from second time
eg : 1:40 PM - 2:30 PM --> output(1:40 PM - 2:30 PM) // nothing remove

【问题讨论】:

  • 这与时区有什么关系?为什么不只是replace(':00','')

标签: javascript reactjs datetime timezone momentjs


【解决方案1】:

我会这样解决它:

var momentDate = moment('<your date>');

function removeMinutes(momentDate) {
   var momentTime = momentDate.format('LT'); // Time formatted as 10:00 AM
   return time.replace(/(:00)/g, '');
}

所以,例如

var momentDate = moment('2021-04-29 10:00'); // Moment Object
var formattedTime = removeMinutes(momentDate); // '10 AM'

希望这可以帮助你。

问候

【讨论】:

    【解决方案2】:

    在格式化之前检查分钟是否为零:

    const time1 = moment('14:00:00', 'hh:mm');
    const time2 = moment('14:30:00', 'hh:mm');
    
    const format = time => {
      if (time.minute() == 0) return time.format('h A');
      else return time.format('h:mm A');
    }
    
    console.log(format(time1))
    console.log(format(time2))
    &lt;script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js" integrity="sha512-qTXRIMyZIFb8iQcfjXWCO8+M5Tbc38Qi5WzdPOYZHIlZpzBHG3L3by84BBBOiRGiEb7KKtAOAs5qYdUiZiQNNQ==" crossorigin="anonymous"&gt;&lt;/script&gt;

    【讨论】:

    • 我没有完整的日期,我只有时间
    • @MehulJariwala 如果你只有时间,你只需要告诉 Moment 期望什么格式。请参阅我编辑的答案。
    • @MehulJariwala 你是什么意思,它输出“1:00 PM”?在我的浏览器中,运行该代码 sn-p 输出“2 PM”和我的示例时间。
    • 输入 ->> "1:00 PM"
    • 输出 -->> "1 PM"
    【解决方案3】:

    很简单

    
    let op = moment(11.00).format("HH")
    
    console.log(op)
    
    

    【讨论】:

    • 即使输入值为 11:30,这不会删除第二部分吗?
    • 确定!但这是时区的问题。对于解决方法,我们必须使用时刻时区
    猜你喜欢
    • 2016-03-07
    • 2020-02-24
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多