Ara*_*ion 6 javascript momentjs
给定一个文本字段,我想要一个合适的占位符.典型的占位符将是:"mm/dd/yyyy".
但是,我想使用moment.js使用区域设置感知日期.
这意味着我将指定"l"作为moment.js日期格式,如何确定moment.js在这种情况下将使用的日期格式?
用户不会理解"l"的含义,因此在占位符文本中使用此值几乎没有意义.
具体来说,我希望能够访问像moment的内部"defaultLongDateFormat"之类的东西.(虽然这只是一个默认值 - moment.js可能会更新它,或者在运行时为区域设置感知日期格式设置其他一些映射 - 我想访问该映射.)
编辑:
有多个downvotes(谁没有解释为什么他们正在贬低它).
我认为这是因为他们不"理解这个问题,所以这里有一些例子:
我想要一个函数:getFormat("l") - >"mm/dd/yyyy",或美国语言环境的等效函数.AU语言环境的getFormat("l") - >"dd/mm/yyyy"或等价物.
我不希望格式化给定的日期,或分析一个给定的日期-我只是想确定这是给予arbitruary moment.js格式的用户友好的格式,具体而言,"L".
小智 5
我不认为它暴露得很好,但是如果浏览器的语言配置正确,你可以这样做:
var lang = navigator.languages ? navigator.languages : navigator.language;
moment().locale(lang).localeData()._longDateFormat['L']
Run Code Online (Sandbox Code Playgroud)
根据您使用的浏览器,语言的行为略有不同,因此不知道这有多可靠。
跟进 Adam R 的回答:
现在好像已经曝光了:
localeData.longDateFormat(dateFormat);
返回缩写日期时间格式 LT、L、LL 等的完整格式
(来源: http: //momentjs.com/docs/)
获取当前使用的语言环境数据moment.localeData()
| 归档时间: |
|
| 查看次数: |
5281 次 |
| 最近记录: |