用Javascript设置日期格式

Format dates in Javascript

本文关键字:格式 日期 设置 Javascript      更新时间:2023-09-26

我必须在一些文件中记录我的错误和日期时间,为此我使用了以下代码:

var dLogDate = new Date();
console.log(dLogDate.toString().substring(4) + ', ' + dLogDate.toGMTString().substring(4));

根据上面的代码输出如下,这很好,但不是我需要的格式:

"Oct 10 2014 12:48:59 GMT+0530 (IST),  10 Oct 2014 07:18:59 GMT"

我想要结果如下:

"10 Oct 2014 12:48:59 (IST),  10 Oct 2014 07:18:59 (GMT)"

请参阅","之前的日期部分。我需要10月10日安装10年

这可以用一些函数来完成,该函数从字符串中减去前4个字符,然后再次连接到第3个位置,但我仍然很想知道是否有其他简单的方法可以做到这一点?我不想使用任何第三方库/脚本。

谢谢。

您可以尝试在原型中添加一个扩展方法toISTString

function pad(n) {
    return (n < 10) ? '0' + n : n;
}
Date.prototype.toISTString = function(locale) {
    var year = this.getFullYear().toString();
    var month = this.toLocaleString(locale, { month: "short" }) // ECMAScript Internationalization API, which is very new only available in Blink browsers (Chrome and Opera), IE11, and Firefox 29+.
    var day  = this.getDate().toString();
    var hrs = this.getHours().toString();
    var mins = this.getMinutes().toString();   
    var secs = this.getSeconds().toString();
    return day + " " + month + " " + year + " " + pad(hrs) + ":" + pad(mins) + ":" + secs + " (IST)";
};
dLogDate = new Date();
console.log(dLogDate.toISTString("en-us") + ', ' + dLogDate.toGMTString().substring(4));

JSFiddle

您可以使用日期函数来格式化日期

http://www.w3schools.com/jsref/jsref_obj_date.asp

var monthIndex = date.getMonth();

var dayIndex = date.getDay();

var monthArray = ['January',....];

var dayArray = ['Sunday',...]

console.log(monthArray[monthIndex] + "-" + dayArray[dayIndex]);