momentjs 显示本地时间和自动格式化字符串

momentjs display localtime and autoformat string

本文关键字:格式化 字符串 时间 显示 momentjs      更新时间:2023-09-26

Momentjs 是否可以显示本地时间并自动格式化字符串?

我有例如。 时间 2015-03-20T09:08:53+01:00 并希望 momentjs 以当地时间显示并以丹麦语格式化,从日-月-年开始

$('[data-momentdate]').each(function () {
                                var localTime = moment.utc($(this).attr('data-momentdate')).toDate();
                                localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');
                                $(this).html(localTime);
                            });

上面的代码将 utc 时间转换为丹麦当地时间,但我希望 momentjs 根据时区确定使用哪种格式

有什么想法吗?

假设您有一个 UTC 日期时间字符串为 2014-02-19 05:24:32 AM 并且您想要确定时区中的时间,然后使用以下代码:

moment.utc('2014-02-19 05:24:32 AM'(.toDate((;

toDate(( 方法给出 javascript Date(( 对象。

$(function(){
  setInterval(function(){
    var divUtc = $('#divUTC');
    var divLocal = $('#divLocal');  
    //put UTC time into divUTC  
    divUtc.text(moment.utc().format('YYYY-MM-DD HH:mm:ss'));      
    //get text from divUTC and conver to local timezone  
    var localTime  = moment.utc(divUtc.text()).toDate();
    localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');
    divLocal.text(localTime);        
  },1000);
});

有关更多信息,请参阅:如何使用 Moment.JS 从 UTC 获取本地时间。


更新:

默认情况下,时刻解析并以本地时间显示。如果你想在UTC中解析或显示一个时刻,你可以使用moment.utc((而不是moment((。

moment().format();     // 2013-02-04T10:35:24-08:00
moment.utc().format(); // 2013-02-04T18:35:24+00:00

另一方面,一个时区可能有不同的格式,在这种情况下,您应该提供格式。除此之外,如果要使用相同的格式,可以在 web.config 上使用如下所示的全球化属性:

<system.web>
    <globalization culture="de-DE" uiCulture="de-DE" />