使用 javascript 获取语言环境短日期格式
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2388115/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Get Locale Short Date Format using javascript
提问by lelol
Is there anyway we can know using JavaScript the Short Date Format used in the Control Panel -> Regional and Language Settings?
无论如何,我们可以使用 JavaScript 了解控制面板 -> 区域和语言设置中使用的短日期格式吗?
I know the using the combination of following we can get the Locale Long Name format
我知道使用以下组合我们可以获得语言环境长名称格式
toString()
toLocaleString()
toLocaleDateString()
toLocaleTimeString()
But there is no direct function in JavaScript like toLocaleShortDateString().
但是 JavaScript 中没有像toLocaleShortDateString().
Are there any scripts available to find out what the user setting is?
是否有任何脚本可用于找出用户设置是什么?
Thanks.
谢谢。
回答by mwrf
function getLocaleDateString(){
var formats = {
"ar-SA" : "dd/MM/yy",
"bg-BG" : "dd.M.yyyy",
"ca-ES" : "dd/MM/yyyy",
"zh-TW" : "yyyy/M/d",
"cs-CZ" : "d.M.yyyy",
"da-DK" : "dd-MM-yyyy",
"de-DE" : "dd.MM.yyyy",
"el-GR" : "d/M/yyyy",
"en-US" : "M/d/yyyy",
"fi-FI" : "d.M.yyyy",
"fr-FR" : "dd/MM/yyyy",
"he-IL" : "dd/MM/yyyy",
"hu-HU" : "yyyy. MM. dd.",
"is-IS" : "d.M.yyyy",
"it-IT" : "dd/MM/yyyy",
"ja-JP" : "yyyy/MM/dd",
"ko-KR" : "yyyy-MM-dd",
"nl-NL" : "d-M-yyyy",
"nb-NO" : "dd.MM.yyyy",
"pl-PL" : "yyyy-MM-dd",
"pt-BR" : "d/M/yyyy",
"ro-RO" : "dd.MM.yyyy",
"ru-RU" : "dd.MM.yyyy",
"hr-HR" : "d.M.yyyy",
"sk-SK" : "d. M. yyyy",
"sq-AL" : "yyyy-MM-dd",
"sv-SE" : "yyyy-MM-dd",
"th-TH" : "d/M/yyyy",
"tr-TR" : "dd.MM.yyyy",
"ur-PK" : "dd/MM/yyyy",
"id-ID" : "dd/MM/yyyy",
"uk-UA" : "dd.MM.yyyy",
"be-BY" : "dd.MM.yyyy",
"sl-SI" : "d.M.yyyy",
"et-EE" : "d.MM.yyyy",
"lv-LV" : "yyyy.MM.dd.",
"lt-LT" : "yyyy.MM.dd",
"fa-IR" : "MM/dd/yyyy",
"vi-VN" : "dd/MM/yyyy",
"hy-AM" : "dd.MM.yyyy",
"az-Latn-AZ" : "dd.MM.yyyy",
"eu-ES" : "yyyy/MM/dd",
"mk-MK" : "dd.MM.yyyy",
"af-ZA" : "yyyy/MM/dd",
"ka-GE" : "dd.MM.yyyy",
"fo-FO" : "dd-MM-yyyy",
"hi-IN" : "dd-MM-yyyy",
"ms-MY" : "dd/MM/yyyy",
"kk-KZ" : "dd.MM.yyyy",
"ky-KG" : "dd.MM.yy",
"sw-KE" : "M/d/yyyy",
"uz-Latn-UZ" : "dd/MM yyyy",
"tt-RU" : "dd.MM.yyyy",
"pa-IN" : "dd-MM-yy",
"gu-IN" : "dd-MM-yy",
"ta-IN" : "dd-MM-yyyy",
"te-IN" : "dd-MM-yy",
"kn-IN" : "dd-MM-yy",
"mr-IN" : "dd-MM-yyyy",
"sa-IN" : "dd-MM-yyyy",
"mn-MN" : "yy.MM.dd",
"gl-ES" : "dd/MM/yy",
"kok-IN" : "dd-MM-yyyy",
"syr-SY" : "dd/MM/yyyy",
"dv-MV" : "dd/MM/yy",
"ar-IQ" : "dd/MM/yyyy",
"zh-CN" : "yyyy/M/d",
"de-CH" : "dd.MM.yyyy",
"en-GB" : "dd/MM/yyyy",
"es-MX" : "dd/MM/yyyy",
"fr-BE" : "d/MM/yyyy",
"it-CH" : "dd.MM.yyyy",
"nl-BE" : "d/MM/yyyy",
"nn-NO" : "dd.MM.yyyy",
"pt-PT" : "dd-MM-yyyy",
"sr-Latn-CS" : "d.M.yyyy",
"sv-FI" : "d.M.yyyy",
"az-Cyrl-AZ" : "dd.MM.yyyy",
"ms-BN" : "dd/MM/yyyy",
"uz-Cyrl-UZ" : "dd.MM.yyyy",
"ar-EG" : "dd/MM/yyyy",
"zh-HK" : "d/M/yyyy",
"de-AT" : "dd.MM.yyyy",
"en-AU" : "d/MM/yyyy",
"es-ES" : "dd/MM/yyyy",
"fr-CA" : "yyyy-MM-dd",
"sr-Cyrl-CS" : "d.M.yyyy",
"ar-LY" : "dd/MM/yyyy",
"zh-SG" : "d/M/yyyy",
"de-LU" : "dd.MM.yyyy",
"en-CA" : "dd/MM/yyyy",
"es-GT" : "dd/MM/yyyy",
"fr-CH" : "dd.MM.yyyy",
"ar-DZ" : "dd-MM-yyyy",
"zh-MO" : "d/M/yyyy",
"de-LI" : "dd.MM.yyyy",
"en-NZ" : "d/MM/yyyy",
"es-CR" : "dd/MM/yyyy",
"fr-LU" : "dd/MM/yyyy",
"ar-MA" : "dd-MM-yyyy",
"en-IE" : "dd/MM/yyyy",
"es-PA" : "MM/dd/yyyy",
"fr-MC" : "dd/MM/yyyy",
"ar-TN" : "dd-MM-yyyy",
"en-ZA" : "yyyy/MM/dd",
"es-DO" : "dd/MM/yyyy",
"ar-OM" : "dd/MM/yyyy",
"en-JM" : "dd/MM/yyyy",
"es-VE" : "dd/MM/yyyy",
"ar-YE" : "dd/MM/yyyy",
"en-029" : "MM/dd/yyyy",
"es-CO" : "dd/MM/yyyy",
"ar-SY" : "dd/MM/yyyy",
"en-BZ" : "dd/MM/yyyy",
"es-PE" : "dd/MM/yyyy",
"ar-JO" : "dd/MM/yyyy",
"en-TT" : "dd/MM/yyyy",
"es-AR" : "dd/MM/yyyy",
"ar-LB" : "dd/MM/yyyy",
"en-ZW" : "M/d/yyyy",
"es-EC" : "dd/MM/yyyy",
"ar-KW" : "dd/MM/yyyy",
"en-PH" : "M/d/yyyy",
"es-CL" : "dd-MM-yyyy",
"ar-AE" : "dd/MM/yyyy",
"es-UY" : "dd/MM/yyyy",
"ar-BH" : "dd/MM/yyyy",
"es-PY" : "dd/MM/yyyy",
"ar-QA" : "dd/MM/yyyy",
"es-BO" : "dd/MM/yyyy",
"es-SV" : "dd/MM/yyyy",
"es-HN" : "dd/MM/yyyy",
"es-NI" : "dd/MM/yyyy",
"es-PR" : "dd/MM/yyyy",
"am-ET" : "d/M/yyyy",
"tzm-Latn-DZ" : "dd-MM-yyyy",
"iu-Latn-CA" : "d/MM/yyyy",
"sma-NO" : "dd.MM.yyyy",
"mn-Mong-CN" : "yyyy/M/d",
"gd-GB" : "dd/MM/yyyy",
"en-MY" : "d/M/yyyy",
"prs-AF" : "dd/MM/yy",
"bn-BD" : "dd-MM-yy",
"wo-SN" : "dd/MM/yyyy",
"rw-RW" : "M/d/yyyy",
"qut-GT" : "dd/MM/yyyy",
"sah-RU" : "MM.dd.yyyy",
"gsw-FR" : "dd/MM/yyyy",
"co-FR" : "dd/MM/yyyy",
"oc-FR" : "dd/MM/yyyy",
"mi-NZ" : "dd/MM/yyyy",
"ga-IE" : "dd/MM/yyyy",
"se-SE" : "yyyy-MM-dd",
"br-FR" : "dd/MM/yyyy",
"smn-FI" : "d.M.yyyy",
"moh-CA" : "M/d/yyyy",
"arn-CL" : "dd-MM-yyyy",
"ii-CN" : "yyyy/M/d",
"dsb-DE" : "d. M. yyyy",
"ig-NG" : "d/M/yyyy",
"kl-GL" : "dd-MM-yyyy",
"lb-LU" : "dd/MM/yyyy",
"ba-RU" : "dd.MM.yy",
"nso-ZA" : "yyyy/MM/dd",
"quz-BO" : "dd/MM/yyyy",
"yo-NG" : "d/M/yyyy",
"ha-Latn-NG" : "d/M/yyyy",
"fil-PH" : "M/d/yyyy",
"ps-AF" : "dd/MM/yy",
"fy-NL" : "d-M-yyyy",
"ne-NP" : "M/d/yyyy",
"se-NO" : "dd.MM.yyyy",
"iu-Cans-CA" : "d/M/yyyy",
"sr-Latn-RS" : "d.M.yyyy",
"si-LK" : "yyyy-MM-dd",
"sr-Cyrl-RS" : "d.M.yyyy",
"lo-LA" : "dd/MM/yyyy",
"km-KH" : "yyyy-MM-dd",
"cy-GB" : "dd/MM/yyyy",
"bo-CN" : "yyyy/M/d",
"sms-FI" : "d.M.yyyy",
"as-IN" : "dd-MM-yyyy",
"ml-IN" : "dd-MM-yy",
"en-IN" : "dd-MM-yyyy",
"or-IN" : "dd-MM-yy",
"bn-IN" : "dd-MM-yy",
"tk-TM" : "dd.MM.yy",
"bs-Latn-BA" : "d.M.yyyy",
"mt-MT" : "dd/MM/yyyy",
"sr-Cyrl-ME" : "d.M.yyyy",
"se-FI" : "d.M.yyyy",
"zu-ZA" : "yyyy/MM/dd",
"xh-ZA" : "yyyy/MM/dd",
"tn-ZA" : "yyyy/MM/dd",
"hsb-DE" : "d. M. yyyy",
"bs-Cyrl-BA" : "d.M.yyyy",
"tg-Cyrl-TJ" : "dd.MM.yy",
"sr-Latn-BA" : "d.M.yyyy",
"smj-NO" : "dd.MM.yyyy",
"rm-CH" : "dd/MM/yyyy",
"smj-SE" : "yyyy-MM-dd",
"quz-EC" : "dd/MM/yyyy",
"quz-PE" : "dd/MM/yyyy",
"hr-BA" : "d.M.yyyy.",
"sr-Latn-ME" : "d.M.yyyy",
"sma-SE" : "yyyy-MM-dd",
"en-SG" : "d/M/yyyy",
"ug-CN" : "yyyy-M-d",
"sr-Cyrl-BA" : "d.M.yyyy",
"es-US" : "M/d/yyyy"
};
return formats[navigator.language] || 'dd/MM/yyyy';
}
回答by Mitali
I think this is the best way to do it...
我认为这是最好的方法...
var date = new Date();
var options = {
weekday: "short",
year: "numeric",
month: "2-digit",
day: "numeric"
};
console.log(
date.toLocaleDateString("en", options) //en is language option, you may specify..
);
More Options and their examples....
更多选项及其示例....
Option Values and sample output
weekday narrow M
short Mon
long Monday
year 2-digit 01
numeric 2001
month 2-digit 01
numeric 1
narrow J
short Jan
long January
day 2-digit 01
numeric 1
hour 2-digit 12 AM
numeric 12 AM
minute 2-digit 0
numeric 0
second 2-digit 0
numeric 0
timeZoneName short 1/1/2001 GMT+00:00
long 1/1/2001 GMT+00:00
回答by holden321
function getLocaleShortDateString(d)
{
var f={"ar-SA":"dd/MM/yy","bg-BG":"dd.M.yyyy","ca-ES":"dd/MM/yyyy","zh-TW":"yyyy/M/d","cs-CZ":"d.M.yyyy","da-DK":"dd-MM-yyyy","de-DE":"dd.MM.yyyy","el-GR":"d/M/yyyy","en-US":"M/d/yyyy","fi-FI":"d.M.yyyy","fr-FR":"dd/MM/yyyy","he-IL":"dd/MM/yyyy","hu-HU":"yyyy. MM. dd.","is-IS":"d.M.yyyy","it-IT":"dd/MM/yyyy","ja-JP":"yyyy/MM/dd","ko-KR":"yyyy-MM-dd","nl-NL":"d-M-yyyy","nb-NO":"dd.MM.yyyy","pl-PL":"yyyy-MM-dd","pt-BR":"d/M/yyyy","ro-RO":"dd.MM.yyyy","ru-RU":"dd.MM.yyyy","hr-HR":"d.M.yyyy","sk-SK":"d. M. yyyy","sq-AL":"yyyy-MM-dd","sv-SE":"yyyy-MM-dd","th-TH":"d/M/yyyy","tr-TR":"dd.MM.yyyy","ur-PK":"dd/MM/yyyy","id-ID":"dd/MM/yyyy","uk-UA":"dd.MM.yyyy","be-BY":"dd.MM.yyyy","sl-SI":"d.M.yyyy","et-EE":"d.MM.yyyy","lv-LV":"yyyy.MM.dd.","lt-LT":"yyyy.MM.dd","fa-IR":"MM/dd/yyyy","vi-VN":"dd/MM/yyyy","hy-AM":"dd.MM.yyyy","az-Latn-AZ":"dd.MM.yyyy","eu-ES":"yyyy/MM/dd","mk-MK":"dd.MM.yyyy","af-ZA":"yyyy/MM/dd","ka-GE":"dd.MM.yyyy","fo-FO":"dd-MM-yyyy","hi-IN":"dd-MM-yyyy","ms-MY":"dd/MM/yyyy","kk-KZ":"dd.MM.yyyy","ky-KG":"dd.MM.yy","sw-KE":"M/d/yyyy","uz-Latn-UZ":"dd/MM yyyy","tt-RU":"dd.MM.yyyy","pa-IN":"dd-MM-yy","gu-IN":"dd-MM-yy","ta-IN":"dd-MM-yyyy","te-IN":"dd-MM-yy","kn-IN":"dd-MM-yy","mr-IN":"dd-MM-yyyy","sa-IN":"dd-MM-yyyy","mn-MN":"yy.MM.dd","gl-ES":"dd/MM/yy","kok-IN":"dd-MM-yyyy","syr-SY":"dd/MM/yyyy","dv-MV":"dd/MM/yy","ar-IQ":"dd/MM/yyyy","zh-CN":"yyyy/M/d","de-CH":"dd.MM.yyyy","en-GB":"dd/MM/yyyy","es-MX":"dd/MM/yyyy","fr-BE":"d/MM/yyyy","it-CH":"dd.MM.yyyy","nl-BE":"d/MM/yyyy","nn-NO":"dd.MM.yyyy","pt-PT":"dd-MM-yyyy","sr-Latn-CS":"d.M.yyyy","sv-FI":"d.M.yyyy","az-Cyrl-AZ":"dd.MM.yyyy","ms-BN":"dd/MM/yyyy","uz-Cyrl-UZ":"dd.MM.yyyy","ar-EG":"dd/MM/yyyy","zh-HK":"d/M/yyyy","de-AT":"dd.MM.yyyy","en-AU":"d/MM/yyyy","es-ES":"dd/MM/yyyy","fr-CA":"yyyy-MM-dd","sr-Cyrl-CS":"d.M.yyyy","ar-LY":"dd/MM/yyyy","zh-SG":"d/M/yyyy","de-LU":"dd.MM.yyyy","en-CA":"dd/MM/yyyy","es-GT":"dd/MM/yyyy","fr-CH":"dd.MM.yyyy","ar-DZ":"dd-MM-yyyy","zh-MO":"d/M/yyyy","de-LI":"dd.MM.yyyy","en-NZ":"d/MM/yyyy","es-CR":"dd/MM/yyyy","fr-LU":"dd/MM/yyyy","ar-MA":"dd-MM-yyyy","en-IE":"dd/MM/yyyy","es-PA":"MM/dd/yyyy","fr-MC":"dd/MM/yyyy","ar-TN":"dd-MM-yyyy","en-ZA":"yyyy/MM/dd","es-DO":"dd/MM/yyyy","ar-OM":"dd/MM/yyyy","en-JM":"dd/MM/yyyy","es-VE":"dd/MM/yyyy","ar-YE":"dd/MM/yyyy","en-029":"MM/dd/yyyy","es-CO":"dd/MM/yyyy","ar-SY":"dd/MM/yyyy","en-BZ":"dd/MM/yyyy","es-PE":"dd/MM/yyyy","ar-JO":"dd/MM/yyyy","en-TT":"dd/MM/yyyy","es-AR":"dd/MM/yyyy","ar-LB":"dd/MM/yyyy","en-ZW":"M/d/yyyy","es-EC":"dd/MM/yyyy","ar-KW":"dd/MM/yyyy","en-PH":"M/d/yyyy","es-CL":"dd-MM-yyyy","ar-AE":"dd/MM/yyyy","es-UY":"dd/MM/yyyy","ar-BH":"dd/MM/yyyy","es-PY":"dd/MM/yyyy","ar-QA":"dd/MM/yyyy","es-BO":"dd/MM/yyyy","es-SV":"dd/MM/yyyy","es-HN":"dd/MM/yyyy","es-NI":"dd/MM/yyyy","es-PR":"dd/MM/yyyy","am-ET":"d/M/yyyy","tzm-Latn-DZ":"dd-MM-yyyy","iu-Latn-CA":"d/MM/yyyy","sma-NO":"dd.MM.yyyy","mn-Mong-CN":"yyyy/M/d","gd-GB":"dd/MM/yyyy","en-MY":"d/M/yyyy","prs-AF":"dd/MM/yy","bn-BD":"dd-MM-yy","wo-SN":"dd/MM/yyyy","rw-RW":"M/d/yyyy","qut-GT":"dd/MM/yyyy","sah-RU":"MM.dd.yyyy","gsw-FR":"dd/MM/yyyy","co-FR":"dd/MM/yyyy","oc-FR":"dd/MM/yyyy","mi-NZ":"dd/MM/yyyy","ga-IE":"dd/MM/yyyy","se-SE":"yyyy-MM-dd","br-FR":"dd/MM/yyyy","smn-FI":"d.M.yyyy","moh-CA":"M/d/yyyy","arn-CL":"dd-MM-yyyy","ii-CN":"yyyy/M/d","dsb-DE":"d. M. yyyy","ig-NG":"d/M/yyyy","kl-GL":"dd-MM-yyyy","lb-LU":"dd/MM/yyyy","ba-RU":"dd.MM.yy","nso-ZA":"yyyy/MM/dd","quz-BO":"dd/MM/yyyy","yo-NG":"d/M/yyyy","ha-Latn-NG":"d/M/yyyy","fil-PH":"M/d/yyyy","ps-AF":"dd/MM/yy","fy-NL":"d-M-yyyy","ne-NP":"M/d/yyyy","se-NO":"dd.MM.yyyy","iu-Cans-CA":"d/M/yyyy","sr-Latn-RS":"d.M.yyyy","si-LK":"yyyy-MM-dd","sr-Cyrl-RS":"d.M.yyyy","lo-LA":"dd/MM/yyyy","km-KH":"yyyy-MM-dd","cy-GB":"dd/MM/yyyy","bo-CN":"yyyy/M/d","sms-FI":"d.M.yyyy","as-IN":"dd-MM-yyyy","ml-IN":"dd-MM-yy","en-IN":"dd-MM-yyyy","or-IN":"dd-MM-yy","bn-IN":"dd-MM-yy","tk-TM":"dd.MM.yy","bs-Latn-BA":"d.M.yyyy","mt-MT":"dd/MM/yyyy","sr-Cyrl-ME":"d.M.yyyy","se-FI":"d.M.yyyy","zu-ZA":"yyyy/MM/dd","xh-ZA":"yyyy/MM/dd","tn-ZA":"yyyy/MM/dd","hsb-DE":"d. M. yyyy","bs-Cyrl-BA":"d.M.yyyy","tg-Cyrl-TJ":"dd.MM.yy","sr-Latn-BA":"d.M.yyyy","smj-NO":"dd.MM.yyyy","rm-CH":"dd/MM/yyyy","smj-SE":"yyyy-MM-dd","quz-EC":"dd/MM/yyyy","quz-PE":"dd/MM/yyyy","hr-BA":"d.M.yyyy.","sr-Latn-ME":"d.M.yyyy","sma-SE":"yyyy-MM-dd","en-SG":"d/M/yyyy","ug-CN":"yyyy-M-d","sr-Cyrl-BA":"d.M.yyyy","es-US":"M/d/yyyy"};
var l=navigator.language?navigator.language:navigator['userLanguage'],y=d.getFullYear(),m=d.getMonth()+1,d=d.getDate();
f=(l in f)?f[l]:"MM/dd/yyyy";
function z(s){s=''+s;return s.length>1?s:'0'+s;}
f=f.replace(/yyyy/,y);f=f.replace(/yy/,String(y).substr(2));
f=f.replace(/MM/,z(m));f=f.replace(/M/,m);
f=f.replace(/dd/,z(d));f=f.replace(/d/,d);
return f;
}
using:
使用:
shortedDate=getLocaleShortDateString(new Date(1992, 0, 7));
shortedDate = getLocaleShortDateString(new Date(1992, 0, 7));
console.log(shortedDate);
function getLocaleShortDateString(d) {
var f={"ar-SA":"dd/MM/yy","bg-BG":"dd.M.yyyy","ca-ES":"dd/MM/yyyy","zh-TW":"yyyy/M/d","cs-CZ":"d.M.yyyy","da-DK":"dd-MM-yyyy","de-DE":"dd.MM.yyyy","el-GR":"d/M/yyyy","en-US":"M/d/yyyy","fi-FI":"d.M.yyyy","fr-FR":"dd/MM/yyyy","he-IL":"dd/MM/yyyy","hu-HU":"yyyy. MM. dd.","is-IS":"d.M.yyyy","it-IT":"dd/MM/yyyy","ja-JP":"yyyy/MM/dd","ko-KR":"yyyy-MM-dd","nl-NL":"d-M-yyyy","nb-NO":"dd.MM.yyyy","pl-PL":"yyyy-MM-dd","pt-BR":"d/M/yyyy","ro-RO":"dd.MM.yyyy","ru-RU":"dd.MM.yyyy","hr-HR":"d.M.yyyy","sk-SK":"d. M. yyyy","sq-AL":"yyyy-MM-dd","sv-SE":"yyyy-MM-dd","th-TH":"d/M/yyyy","tr-TR":"dd.MM.yyyy","ur-PK":"dd/MM/yyyy","id-ID":"dd/MM/yyyy","uk-UA":"dd.MM.yyyy","be-BY":"dd.MM.yyyy","sl-SI":"d.M.yyyy","et-EE":"d.MM.yyyy","lv-LV":"yyyy.MM.dd.","lt-LT":"yyyy.MM.dd","fa-IR":"MM/dd/yyyy","vi-VN":"dd/MM/yyyy","hy-AM":"dd.MM.yyyy","az-Latn-AZ":"dd.MM.yyyy","eu-ES":"yyyy/MM/dd","mk-MK":"dd.MM.yyyy","af-ZA":"yyyy/MM/dd","ka-GE":"dd.MM.yyyy","fo-FO":"dd-MM-yyyy","hi-IN":"dd-MM-yyyy","ms-MY":"dd/MM/yyyy","kk-KZ":"dd.MM.yyyy","ky-KG":"dd.MM.yy","sw-KE":"M/d/yyyy","uz-Latn-UZ":"dd/MM yyyy","tt-RU":"dd.MM.yyyy","pa-IN":"dd-MM-yy","gu-IN":"dd-MM-yy","ta-IN":"dd-MM-yyyy","te-IN":"dd-MM-yy","kn-IN":"dd-MM-yy","mr-IN":"dd-MM-yyyy","sa-IN":"dd-MM-yyyy","mn-MN":"yy.MM.dd","gl-ES":"dd/MM/yy","kok-IN":"dd-MM-yyyy","syr-SY":"dd/MM/yyyy","dv-MV":"dd/MM/yy","ar-IQ":"dd/MM/yyyy","zh-CN":"yyyy/M/d","de-CH":"dd.MM.yyyy","en-GB":"dd/MM/yyyy","es-MX":"dd/MM/yyyy","fr-BE":"d/MM/yyyy","it-CH":"dd.MM.yyyy","nl-BE":"d/MM/yyyy","nn-NO":"dd.MM.yyyy","pt-PT":"dd-MM-yyyy","sr-Latn-CS":"d.M.yyyy","sv-FI":"d.M.yyyy","az-Cyrl-AZ":"dd.MM.yyyy","ms-BN":"dd/MM/yyyy","uz-Cyrl-UZ":"dd.MM.yyyy","ar-EG":"dd/MM/yyyy","zh-HK":"d/M/yyyy","de-AT":"dd.MM.yyyy","en-AU":"d/MM/yyyy","es-ES":"dd/MM/yyyy","fr-CA":"yyyy-MM-dd","sr-Cyrl-CS":"d.M.yyyy","ar-LY":"dd/MM/yyyy","zh-SG":"d/M/yyyy","de-LU":"dd.MM.yyyy","en-CA":"dd/MM/yyyy","es-GT":"dd/MM/yyyy","fr-CH":"dd.MM.yyyy","ar-DZ":"dd-MM-yyyy","zh-MO":"d/M/yyyy","de-LI":"dd.MM.yyyy","en-NZ":"d/MM/yyyy","es-CR":"dd/MM/yyyy","fr-LU":"dd/MM/yyyy","ar-MA":"dd-MM-yyyy","en-IE":"dd/MM/yyyy","es-PA":"MM/dd/yyyy","fr-MC":"dd/MM/yyyy","ar-TN":"dd-MM-yyyy","en-ZA":"yyyy/MM/dd","es-DO":"dd/MM/yyyy","ar-OM":"dd/MM/yyyy","en-JM":"dd/MM/yyyy","es-VE":"dd/MM/yyyy","ar-YE":"dd/MM/yyyy","en-029":"MM/dd/yyyy","es-CO":"dd/MM/yyyy","ar-SY":"dd/MM/yyyy","en-BZ":"dd/MM/yyyy","es-PE":"dd/MM/yyyy","ar-JO":"dd/MM/yyyy","en-TT":"dd/MM/yyyy","es-AR":"dd/MM/yyyy","ar-LB":"dd/MM/yyyy","en-ZW":"M/d/yyyy","es-EC":"dd/MM/yyyy","ar-KW":"dd/MM/yyyy","en-PH":"M/d/yyyy","es-CL":"dd-MM-yyyy","ar-AE":"dd/MM/yyyy","es-UY":"dd/MM/yyyy","ar-BH":"dd/MM/yyyy","es-PY":"dd/MM/yyyy","ar-QA":"dd/MM/yyyy","es-BO":"dd/MM/yyyy","es-SV":"dd/MM/yyyy","es-HN":"dd/MM/yyyy","es-NI":"dd/MM/yyyy","es-PR":"dd/MM/yyyy","am-ET":"d/M/yyyy","tzm-Latn-DZ":"dd-MM-yyyy","iu-Latn-CA":"d/MM/yyyy","sma-NO":"dd.MM.yyyy","mn-Mong-CN":"yyyy/M/d","gd-GB":"dd/MM/yyyy","en-MY":"d/M/yyyy","prs-AF":"dd/MM/yy","bn-BD":"dd-MM-yy","wo-SN":"dd/MM/yyyy","rw-RW":"M/d/yyyy","qut-GT":"dd/MM/yyyy","sah-RU":"MM.dd.yyyy","gsw-FR":"dd/MM/yyyy","co-FR":"dd/MM/yyyy","oc-FR":"dd/MM/yyyy","mi-NZ":"dd/MM/yyyy","ga-IE":"dd/MM/yyyy","se-SE":"yyyy-MM-dd","br-FR":"dd/MM/yyyy","smn-FI":"d.M.yyyy","moh-CA":"M/d/yyyy","arn-CL":"dd-MM-yyyy","ii-CN":"yyyy/M/d","dsb-DE":"d. M. yyyy","ig-NG":"d/M/yyyy","kl-GL":"dd-MM-yyyy","lb-LU":"dd/MM/yyyy","ba-RU":"dd.MM.yy","nso-ZA":"yyyy/MM/dd","quz-BO":"dd/MM/yyyy","yo-NG":"d/M/yyyy","ha-Latn-NG":"d/M/yyyy","fil-PH":"M/d/yyyy","ps-AF":"dd/MM/yy","fy-NL":"d-M-yyyy","ne-NP":"M/d/yyyy","se-NO":"dd.MM.yyyy","iu-Cans-CA":"d/M/yyyy","sr-Latn-RS":"d.M.yyyy","si-LK":"yyyy-MM-dd","sr-Cyrl-RS":"d.M.yyyy","lo-LA":"dd/MM/yyyy","km-KH":"yyyy-MM-dd","cy-GB":"dd/MM/yyyy","bo-CN":"yyyy/M/d","sms-FI":"d.M.yyyy","as-IN":"dd-MM-yyyy","ml-IN":"dd-MM-yy","en-IN":"dd-MM-yyyy","or-IN":"dd-MM-yy","bn-IN":"dd-MM-yy","tk-TM":"dd.MM.yy","bs-Latn-BA":"d.M.yyyy","mt-MT":"dd/MM/yyyy","sr-Cyrl-ME":"d.M.yyyy","se-FI":"d.M.yyyy","zu-ZA":"yyyy/MM/dd","xh-ZA":"yyyy/MM/dd","tn-ZA":"yyyy/MM/dd","hsb-DE":"d. M. yyyy","bs-Cyrl-BA":"d.M.yyyy","tg-Cyrl-TJ":"dd.MM.yy","sr-Latn-BA":"d.M.yyyy","smj-NO":"dd.MM.yyyy","rm-CH":"dd/MM/yyyy","smj-SE":"yyyy-MM-dd","quz-EC":"dd/MM/yyyy","quz-PE":"dd/MM/yyyy","hr-BA":"d.M.yyyy.","sr-Latn-ME":"d.M.yyyy","sma-SE":"yyyy-MM-dd","en-SG":"d/M/yyyy","ug-CN":"yyyy-M-d","sr-Cyrl-BA":"d.M.yyyy","es-US":"M/d/yyyy"};
var l = navigator.language ? navigator.language : navigator['userLanguage'],
y = d.getFullYear(),
m = d.getMonth() + 1,
d = d.getDate();
f = (l in f) ? f[l] : "MM/dd/yyyy";
function z(s) {
s = '' + s;
return s.length > 1 ? s : '0' + s;
}
f = f.replace(/yyyy/, y);
f = f.replace(/yy/, String(y).substr(2));
f = f.replace(/MM/, z(m));
f = f.replace(/M/, m);
f = f.replace(/dd/, z(d));
f = f.replace(/d/, d);
return f;
}
回答by brianary
Can't be done.
做不到。
Cross-browser JavaScript has no way to use the actual short date format selected by the user on platforms that offer such regional customization. Besides, JavaScript has huge holes where any sort of formatting is concerned. Look how much hassle zero-padding is!
跨浏览器 JavaScript 无法使用用户在提供此类区域自定义的平台上选择的实际短日期格式。此外,JavaScript 在任何类型的格式化方面都有巨大的漏洞。看看零填充是多么麻烦!
You can go to great lengths to obtain the language setting, and get the typicalformat for that locale. That's a lot of work when you don't even know if it's the correct locale (I'd bet that international language headers are often incorrect or not specific enough), or if the user has customized the format to something else.
您可以不遗余力地获取语言设置,并获取该语言环境的典型格式。当您甚至不知道它是否是正确的语言环境(我敢打赌,国际语言标题通常不正确或不够具体),或者用户是否已将格式自定义为其他格式时,这需要做很多工作。
You can try using client VBScript (which has functions for all of these regional formatting permutations), but that's not a good idea because it's a dying (dead?) IE-specific technology.
您可以尝试使用客户端 VBScript(它具有用于所有这些区域格式排列的函数),但这不是一个好主意,因为它是一种垂死(死?)特定于 IE 的技术。
You can also try using Java/Flash/Silverlight to dig up the format. This is also a great deal of extra work, but may have the best chance for success. You'd want to cache it for the session to minimize the overhead.
您也可以尝试使用 Java/Flash/Silverlight 来挖掘格式。这也是大量的额外工作,但可能是成功的最佳机会。您希望为会话缓存它以最小化开销。
Hopefully the HTML5 <time> element will provide some relief for i18n date/time display.
希望 HTML5 <time> 元素能够为 i18n 日期/时间显示提供一些缓解。
回答by iegik
If your question about <input type="date">field, here is script for getting filed value=""attribute:
如果您对<input type="date">字段有疑问,这里是获取归档value=""属性的脚本:
(new Date()).toISOString().split('T')[0]
You can use the Intlobject (ecma-402) to get data-date-pattern="":
您可以使用Intl对象 ( ecma-402) 来获取data-date-pattern="":
(new Intl.DateTimeFormat()).resolved.pattern // "M/d/y" for "en-US" in Google Chrome
And finnaly, to format date in current l10n, data-date="":
最后,要在当前的 l10n 中格式化日期,data-date="":
(new Intl.DateTimeFormat()).format(new Date());
Polyfill: https://github.com/andyearnshaw/Intl.js/issues/129
Polyfill:https: //github.com/andyearnshaw/Intl.js/issues/129
回答by zloctb
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
The Intl.DateTimeFormat object is a constructor for objects that enable language sensitive date and time formatting.
Intl.DateTimeFormat 对象是启用语言敏感日期和时间格式的对象的构造函数。
var date = new Date(2014, 11, 31, 12, 30, 0);
var formatter = new Intl.DateTimeFormat("ru");
console.log( formatter.format(date) ); // 31.12.2014
var formatter = new Intl.DateTimeFormat("en-US");
console.log(formatter.format(date)); // 12/31/2014
format of your current zone :
当前区域的格式:
console.log(new Intl.DateTimeFormat(Intl.DateTimeFormat().resolvedOptions().locale).
format(new Date()))
回答by Amitay Dobo
I don't know of a way to do that (you can get the languageand try to deduct the locale from that).
我不知道有什么方法可以做到这一点(您可以获取语言并尝试从中扣除语言环境)。
I tried to cook a little something to try and do that (only tested on Firefox with one locale). should work as long as the short date string includes the date as digits, so it might fail for, say, arabic. It might have other bugs too, i don't know all the different locales peculiarities, this is just a concept...
我试着做一些东西来尝试做到这一点(仅在具有一种语言环境的 Firefox 上进行了测试)。只要短日期字符串以数字形式包含日期就应该可以工作,因此它可能会失败,例如阿拉伯语。它也可能有其他错误,我不知道所有不同的语言环境特性,这只是一个概念......
function getShortDateFormat() {
var d = new Date(1992, 0, 7);
var s = d.toLocaleDateString();
function formatReplacer(str) {
var num = parseInt(str);
switch (num % 100) {
case 92:
return str.replace(/.{1}/g, "Y");
case 1:
return str.length == 1 ? "mM" : "MM"
case 7:
return str.length == 1 ? "dD" : "DD"
}
}
shortDateFormat = s.replace(/\d+/g, formatReplacer);
return shortDateFormat;
}
getShortDateFormat();
The outputted format will be:
输出的格式将是:
- Y: the number of digits to represent years
- dD = short day (i.e. use only one digit when possible)
- DD = long day format (i.e. two digits always)
- mM/MM - same for months
- Y:代表年份的位数
- dD = 短日(即尽可能仅使用一位数字)
- DD = 长日格式(即始终为两位数)
- mM/MM - 几个月相同
So in my browser, the shortDateformat you get is "MM/DD/YYYY".
所以在我的浏览器中,你得到的 shortDateformat 是“MM/DD/YYYY”。
回答by Gonzalo
This depends on the browser's toLocaleDateString()implementation.
For example in chrome you will get something like: Tuesday, January DD, YYYY
这取决于浏览器的toLocaleDateString()实现。例如在 chrome 中你会得到类似的东西:Tuesday, January DD, YYYY
回答by Shai Petel
I believe you can use this one:
我相信你可以使用这个:
new Date().toLocaleDateString();
Which can accept parameters for the locale:
可以接受区域设置的参数:
new Date().toLocaleDateString("en-us");
new Date().toLocaleDateString("he-il");
I see it is supported by chrome, IE, edge, although results may vary it does a pretty good job for me.
我看到它受到 chrome、IE、edge 的支持,尽管结果可能会有所不同,但它对我来说做得很好。
回答by Boern
new Date(YOUR_DATE_STRING).toLocaleDateString(navigator.language)
~ combination of answers of above
~以上答案的组合

