2016-01-11 104 views
1

我正在尝试使用ZH_CN区域设置来使用moment.js格式化日期。我使用下面的代码:Moment.js ZH_CN区域设置的格式化时间

moment('2013-12-31T13:21:55+00:00').locale('zh_cn').format("LL h:m:s:SSS") 

这将返回以下日期:2013年12月31日下午1:21:55:000

的时间不正确但是格式化。我希望的时候将有appropraite中国字符后,每个digit.I看着四周,时刻与 - locales.js,发现下面是zh_CN语言定义:

relativeTime : { 
     future : '%s内', 
     past : '%s前', 
     s : '几秒', 
     m : '1分', 
     mm : '%d分', 
     h : '1小时', 
     hh : '%d小时', 
     d : '1天', 
     dd : '%d天', 
     M : '1个月', 
     MM : '%d个月', 
     y : '1年', 
     yy : '%d年' 
    } 

不会被退回这些字符即使我在格式字符串(h:m:s:sss)中指定它们。我做错了什么?谢谢!

回答

0

relativeTime自定义只影响产生相对时间输出的函数,如fromNow

此外,只有本地化格式说明符(如LL)将包含您正在查找的字符。您可以将它们组合起来以获得所需的输出。

var m = moment('2013-12-31T13:21:55+00:00').locale('zh_cn'); 

m.format("LL")  // "2013年12月31日" 
m.format("LLL")  // "2013年12月31日凌晨5点21分" 
m.format("LT")  // "凌晨5点21分" 
m.format("LTS")  // "凌晨5点21分55秒" 
m.format("LL[]LTS") // "2013年12月31日凌晨5点21分55秒" 

我相信最后一个会满足您的需求。请注意,使用[]是必要的,因此LLLTS被解释为单独的代码而不会引入其他字符。

相关问题