var format = 'EEEE, D 'de' MMMM 'de' Y'
moment(date).format(format);


我有一个自定义格式,并与moment一起使用,并得到了

exp: segunda-feira, 2 de janeiro de 2017
act: Segunda-feira, 2 11 Janeiro 11 2017


请注意,模式中的占位符de实际上已被解析..
我有一种方法可以使用矩来以预期的格式segunda-feira, 2 de janeiro de 2017获取日期吗?

最佳答案

您必须使用[]方括号来转义格式字符串中的字符,请参见format文档:


  要转义格式字符串中的字符,可以将字符包装在方括号中。


此外请注意,暂时没有EEEE令牌,但是单个E表示星期几(ISO),因此在您的情况下,您将具有2222。使用dddd获取所需的输出。

这是一个工作示例:



var date = '2017-01-02';
var format = 'dddd, D [de] MMMM [de] YYYY';
console.log(moment(date).format(format));

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/locale/pt.js"></script>

关于javascript - 使用带有自定义格式的时刻设置日期格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42638718/

10-12 00:21
查看更多