【发布时间】:2009-11-03 15:47:53
【问题描述】:
想象一下,网页上有两个标签都显示日期。考虑到用户的区域设置,您如何找出哪个日期更大。
说标签 1:2009 年 4 月 11 日标签 2:2009 年 9 月 10 日
如果它在美国标签 2 > 标签 1
如果是英国标签 1 > 标签 2
日期构造函数忽略语言环境信息,因此无论语言环境如何,var d = new Date('04/11/2009') 将始终是 2009 年 4 月 11 日而不是 2009 年 11 月 4 日。有谁知道解决这个问题的任何技巧?有什么图书馆值得一试吗?
(目前我能看到的唯一方法是使用 js 获取语言环境信息,然后解析标签,这样我就可以使用另一个构造函数创建一个日期对象,但这似乎对于一个所谓的简单问题来说很重要?此外,这不是可以在很多语言环境中很好地工作)
【问题讨论】:
-
这个问题应该概括为“如何在考虑当前语言环境的情况下解析日期字符串?”使用小于
<和大于>的运算符可以轻松比较结果日期。这是你真正追求的解析(我认为)。 -
很公平,但只有在您尝试与日期进行比较(或做某事)之前,您可能会意识到问题的本质
-
以任何方式(例如
getDate、getMonth、Firebug、toString)检查解析结果时,问题的性质变得显而易见。比较只是使失败显而易见的众多案例之一。 -
看起来你当然是对的,在某种程度上感谢你,但有时和例子很好地证明了一个问题..所以选择你的人。比较,getDate,getMonth,任何帮助表示赞赏
标签: javascript date