给定一个文本字段,我想要一个合适的占位符。典型的占位符类似于:“mm/dd/yyyy”。
但是,我想通过 moment.js 使用区域设置感知日期。
这意味着我将指定“l”作为 moment.js 日期格式,如何确定在这种情况下 moment.js 将使用的日期格式?
用户不会理解“l”的含义,因此在占位符文本中使用该值没有什么意义。
具体来说,我希望能够访问类似于 moment 的内部“默认 LongDateFormat”之类的内容。 (虽然这只是一个default- moment.js 可能会更新它,或者在运行时有一些其他映射用于区域设置感知的日期格式 - 我想访问该映射。)
EDIT:
有多个反对票(他们没有解释为什么他们反对它)。
我认为这是因为他们不理解这个问题,所以这里有一些例子:
我想要一个这样的函数:
getFormat("l") -> "mm/dd/yyyy",或美国语言环境的等效内容。
getFormat("l") -> "dd/mm/yyyy" 或等效项(对于 AU 语言环境)。
I do not想要格式化给定的日期,或者解析给定的日期 - 我只想确定给定任意 moment.js 格式(特别是“l”)的用户友好格式。
我不认为它暴露得很好,但是如果浏览器的语言配置正确,你可以这样做:
var lang = navigator.languages ? navigator.languages : navigator.language;
moment().locale(lang).localeData()._longDateFormat['L']
根据您使用的浏览器,语言的行为略有不同,因此不知道这有多可靠。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)