js中date类型的格式转化为yyyy-MM-dd HH:mm:ss的String类型

在vue中或其他框架中可以在Date的原型链中添加Format的方法,如ruoyi可以写在main.js中更好,如果写在utils还需要去导入包。

正常的js直接放到utils.js就好

Date.prototype.Format = function (formatStr) {
var str = formatStr;
var Week = [‘日‘, ‘一‘, ‘二‘, ‘三‘, ‘四‘, ‘五‘, ‘六‘];
str = str.replace(/yyyy|YYYY/, this.getFullYear());
str = str.replace(/yy|YY/, (this.getYear() % 100) > 9 ? (this.getYear() % 100).toString() : ‘0‘ + (this.getYear() % 100));
var month = this.getMonth() + 1;
str = str.replace(/MM/, month > 9 ? month.toString() : ‘0‘ + month);
str = str.replace(/M/g, month);

str = str.replace(/w|W/g, Week[this.getDay()]);

str = str.replace(/dd|DD/, this.getDate() > 9 ? this.getDate().toString() : ‘0‘ + this.getDate());
str = str.replace(/d|D/g, this.getDate());

str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : ‘0‘ + this.getHours());
str = str.replace(/h|H/g, this.getHours());
str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes().toString() : ‘0‘ + this.getMinutes());
str = str.replace(/m/g, this.getMinutes());

str = str.replace(/ss|SS/, this.getSeconds() > 9 ? this.getSeconds().toString() : ‘0‘ + this.getSeconds());
str = str.replace(/s|S/g, this.getSeconds());
return str;
}

1.Date类型转化为固定的String格式

//创建日期

let newDate = new Date("Mon Mar 01 2021 11:33:32 GMT+0800 (中国标准时间)").Format("yyyy-MM-dd HH:mm:ss")

console.log(newDate)  //2021-03-01 11:33:32  这个是String类型

2.固定的String格式转化为Date类型

let sd = "2021-03-01 11:33:32";

let array =  t.split("-");
let dt = new Date(array[0], array[1], array[2]);

var dtt = new Date(t.replace("-g-/", ""));

console.log(dtt) //"Mon Mar 01 2021 11:33:32 GMT+0800 (中国标准时间)"

js中date类型的格式转化为yyyy-MM-dd HH:mm:ss的String类型

上一篇:node.js REPL环境及代码运行


下一篇:三层MVC框架