JavaScript - 获取系统短日期格式

Woo*_*Dzu 12 javascript datetime date

有没有办法在JavaScript中获得系统短日期格式?

例如,系统的短日期是否采用美国格式,例如.m/d/Y或欧洲,例如 d /米/ Y

请注意: 这不是关于格式化日期或基于地理位置计算日期的问题,而是关于从OS /系统获取格式的问题

小智 5

经过一番研究后,我得出结论,从技术上讲,无法获得区域设置-以此日期格式为准-但您可以做其他几件事。选择以下选项之一:
a)已经提到的和过时的“ toLocaleString()”函数:

var myDate = new Date(1950, 01, 21, 22, 23, 24, 225);
var myDateFormat = myDate.toLocaleString();
alert (myDateFormat);
Run Code Online (Sandbox Code Playgroud)

问题:
1)您不能“ myDateFormat.replace”来获取日期掩码,因为月份不是基于字符串(例如“ February”)存储在字符串中,而是以文本形式存储为“ 01”,“ 02”等,而是以文本形式存储英语,但是希腊语是“ ????????????”,谁知道例如Klingon的意思)。
2)在不同浏览器上的不同行为
3)在不同操作系统和浏览器版本上的不同行为...

b)使用toISOString()功能代替toLocaleString()。您将不会获得语言环境日期掩码,但会获得一个日期,从中您可以知道日期的哪一部分(即该字符串中的“月”或“日”在哪里)。您也可以工作getUTCDate()getUTCMonth()getUTCDay()功能。您仍然无法确定客户使用哪种日期格式,但是当您约会时可以告诉您使用哪个年/月/日/等。使用code上面测试了我在这里提到的功能,以了解您可以期待什么。

c)在不同的浏览器文章中阅读 toLocaleString()的不一致行为,并使用此处所述的(恕我直言)解决方案


Ren*_*eno 0

这不可能。您可以从用户浏览器获取文化并使用一些js库转换为正确的日期格式。http://code.google.com/p/datejs/