javascript日期格式(国际设置)
javascript Date.toLocaleDateString()很愚蠢 我需要的是一个函数,它允许我根据偏好简化日期 如果有一个函数可以读取浏览器日期格式(复数),并获取一个可选参数,告诉它使用哪种格式,那就太好了 我会解释: “MM/DD/YYYY”对美国和任何愿意忍受他们/我们的人来说都非常有用。 “DD/MM/YYYY”是对简短的简单日期格式感兴趣的人最常用的格式。 “Weekday,Month DayOfMonth,Year”仅在需要超长且依赖于语言的输出时才有用 我可以用这个:javascript日期格式(国际设置),javascript,date,Javascript,Date,javascript Date.toLocaleDateString()很愚蠢 我需要的是一个函数,它允许我根据偏好简化日期 如果有一个函数可以读取浏览器日期格式(复数),并获取一个可选参数,告诉它使用哪种格式,那就太好了 我会解释: “MM/DD/YYYY”对美国和任何愿意忍受他们/我们的人来说都非常有用。 “DD/MM/YYYY”是对简短的简单日期格式感兴趣的人最常用的格式。 “Weekday,Month DayOfMonth,Year”仅在需要超长且依赖于语言的输出时才有用 我可以用这个:
var s = "/";
if(locale=='us')
var dateString = Date.getDate()+s+Date.getDay()+s+Date.getFullYear();
else
var dateString = Date.getDay()+s+Date.getDate()+s+Date.getFullYear();
但我正在寻找一种更优雅的解决方案,它允许我存储日期掩码或格式字符串,这样人们就可以根据自己的喜好改变日期的显示方式。(如果他们足够喜欢的话,即使是超长的依赖于语言的。)
我是否应该重新构造Date.toString()方法的原型以解释参数?有更好的方法吗?我遇到了一个功能强大的库,可以处理日期和通用格式: http://blog.stevenlevithan.com/archives/date-time-format (错误链接) 是非常强大和可配置的。(它支持我需要的java风格的格式,比如“中”日期格式)
Moment似乎很有用,功能齐全(只是没有中等格式):您可以使用DateTimeFormatAPI。
var now=新日期(0)
log(新的Intl.DateTimeFormat('en-US').format(现在))//12/31/1969
log(新的Intl.DateTimeFormat('en-GB').format(现在))//1969年12月31日