时间格式转换与不同时间获取

1、将new Date() 出的时间(Mon Feb 18 2019 14:10:59 GMT+0800 (中国标准时间))改为YYYY-MM-DD格式

//获取时间,格式YYYY-MM-DD
getNowFormatDate(dateInfo) {
let date = dateInfo;
let seperator1 = "-";
let year = date.getFullYear();
let month = date.getMonth() + 1;
let strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
let currentdate = year + seperator1 + month + seperator1 + strDate;
return currentdate;
}


格式YYYY-MM-DD HH:MM:SS
dateFormat(date){
        let currentDate = "";
        let year = date.getFullYear();

        let month = date.getMonth()+1;
        if(month<10) month='0'+month;

        let day = date.getDate();
        if(day<10) day='0'+day;

        let hour = date.getHours();
        if(hour<10) hour='0'+hour;

        let min = date.getMinutes();
        if(min<10) min='0'+min;

        let second = date.getSeconds();
        if(second<10) second='0'+second;

        currentDate = year+"-"+month+"-"+day+" "+hour+":"+min+":"+second;
        return currentDate;
    }

2、获取当前时间的前一天/后一天

preDate = new Date(new Date().getTime() - 24*60*60*1000); //前一天

nextDate = new Date(new Date().getTime() + 24*60*60*1000); //后一天

3、获取当前时间的前一周

//根据日期获取这周的周一
getFirstDayOfWeek (date) {
let day = date.getDay() || 7;
this.nowDay = day;
let getMonday = new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1 - day);//获取周一
this.currentMonday = this.getNowFormatDate(getMonday); // 获取yyyy-mm-dd格式的周一日期
this.currentSunday = this.addDate(this.currentMonday,6); //周日
};

//日期加法
addDate(date,days){
let d = new Date(date);
d.setDate(d.getDate() + days);
let month = d.getMonth() + 1;
let day = d.getDate();
let vl = d.getFullYear() + "-" + month + "-" + day ;
return vl;
}

 4、ngzorro中时间格式转换

transforTime(t) {
if (t !== null && t !== '') {
const d = new Date(t);
const month = (d.getMonth() + 1) < 10 ? '0' + (d.getMonth() + 1).toString(): d.getMonth() + 1;
const date = d.getDate() < 10 ? '0' + (d.getDate()).toString() : d.getDate();
return d.getFullYear() + '-' + month + '-' + date;
} else {
return '';
}
}

5、零散

const d = new Date();
d.getYear(); // 获取年(2位)
d.getFullYear(); // 获取年(4位)
Math.floor((d.getMonth()+3)/3)
d.getMonth()+1; // 获取月(d.getMonth()表示(0-11))
d.getDate(); // 获取日(1-31)
d.getDay(); // 获取当前星期几(0-6,0代表星期日)
d.getTime(); // 获取时间戳
d.getHours(); // 获取时(0-23)
d.getMinutes(); // 获取分(0-59)
d.getSeconds(); // 获取秒(0-59)
d.getMilliseconds(); // 获取毫秒(0-999)
d.toLocaleDateString(); // 获取当前日期(2019/2/18)
d.toLocaleTimeString(); // 获取当前时间(下午3:46:08)
d.toLocaleString(); // 获取日期与时间(2019/2/18 下午3:47:19)

 6、moment插件使用

描述:weui插件显示为Wed Mar 11 2020 09:29:00 GMT+0800 (中国标准时间),后端需要格式化的时间(2020-03-11 09:29:00),而表单初始化时,后端返回格式化的时间,前端需要将时间转为中国标准时间(之前自己写代码转,现在借用插件moment

(1)安装:npm install moment --save

(2)在配置文件angular.json中引用js

"scripts": [

   "node_modules/moment/min/moment.min.js"

]

(3)在需要使用的js文件中引入

import * as moment from 'moment';

(4)使用

标准时间转格式化时间:moment(中国标准时间).format('YYYY-MM-DD HH:mm:ss')

格式化时间转标准时间:new Date(格式化时间)

其他参考:https://blog.csdn.net/Vansal/article/details/100761328

原文地址:https://www.cnblogs.com/boreguo/p/10395734.html