我正在尝试创建一个需要根据pc区域设置显示日期格式的JAVASCRIPT代码。我需要以“2013年4月19日”的以下模式表示为“2013年4月19日”或“19/04/2013”或“2013/04/19”,以适用于该地区为准。
答案 0 :(得分:0)
下面,轻量级方法可能会有所帮助:[但是,有许多jquery插件/库可用)
如果您是ASP.NET MVC,那么下面的代码段可能会有所帮助:
$(“#spanTime”)。text(new Date('@ Model.EventDateTimeStr'+“utc”)。stringFormat(“MM / DD / YYYY”));
Date.prototype.stringFormat = function (format) {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var monthsFull = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var dt = this;
var h = dt.getHours();
var d = dt.getDate();
var M = dt.getMonth() + 1;
var yyyy = dt.getFullYear();
var yy = padBefore((yyyy + "").substr(2, 2), 2);
var m = dt.getMinutes();
var dd = padBefore(d, 2);
var MM = padBefore(M, 2);
var mm = padBefore(m, 2);
var MMM = months[M - 1];
var MMMM = monthsFull[M - 1];
var H = h;
var HH = padBefore(h, 2);
var hh = "";
var tt = "PM";
if (h >= 12) {
if (h != 12) {
h = h - 12;
}
} else {
if (h == 0) h = 12;
tt = " AM";
}
hh = padBefore(h, 2);
return format
.replace("hh", hh)
.replace("h", h)
.replace("HH", HH)
.replace("H", H)
.replace("mm", mm)
.replace("m", m)
.replace("dd", dd)
.replace("d", d)
.replace("MMMM", MMMM)
.replace("MMM", MMM)
.replace("MM", MM)
/*.replace("M", M)*/
.replace("yyyy", yyyy)
.replace("yy", yy)
.replace("tt", tt);
};
答案 1 :(得分:0)
您可以根据navigator.language
格式化日期见
https://developer.mozilla.org/en-US/docs/DOM/window.navigator.language
var lang= navigator.browserLanguage || navigator.language || navigator.userLanguage;