如何通过Moment.js获取指定语言环境的日期格式字符串?
获取Moment.js当前语言环境的日期格式配置
当然有公开方法可以直接查询当前语言环境对应的日期格式规则,不用去翻内部代码哦!Moment.js提供了moment.localeData()这个实用的API,专门用来访问本地化配置信息,包括你关注的longDateFormat。
具体用法示例:
- 获取当前语言环境的所有长日期格式配置
// 获取当前locale的本地化数据对象 const currentLocaleData = moment.localeData(); // 提取所有longDateFormat配置 const allLongFormats = currentLocaleData.longDateFormat(); // 输出结果会类似你提到的结构: // { LT: 'HH:mm', LTS: 'HH:mm:ss', L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY HH:mm', LLLL: 'dddd D MMMM YYYY HH:mm' } console.log(allLongFormats);
- 直接获取单个格式(比如LLL)的规则
如果你只关心某一个特定格式(比如你用到的LLL),可以直接给方法传格式标识:
const lllFormatRule = moment.localeData().longDateFormat('LLL'); console.log(lllFormatRule); // 输出当前locale下LLL对应的格式字符串,比如'D MMMM YYYY HH:mm'
- 获取指定语言环境的配置
如果需要查看非当前语言环境的格式规则,还可以给localeData()传入语言标识:
// 查看法语环境的LLL格式 const frLocaleData = moment.localeData('fr'); console.log(frLocaleData.longDateFormat('LLL')); // 输出对应法语环境的LLL格式字符串
这个方法是Moment.js官方公开API的一部分,完全安全可靠,不用依赖内部未暴露的变量~
内容的提问来源于stack exchange,提问作者Stefdelec
相关产品推荐
相关产品推荐

