【日期类型】前端、后端、数据库中的日期操作集合帖-持续更新

本期内容

本期将对前端、后端、数据库等的日期操作方法,集中整合于本帖,便于记录和查阅。

目录

前端

1、使用 JS 判断是否为周末(2020-5-17更)

2、在 Vue 中 Date 类型转换成 String(2020-5-18更)

MySQL 数据库

1、MySQL 获取日期数据中的月份(2020-5-17更)

Java

1、Java 中计算两个日期相差的天数(2020-5-18更)


 

前端

1、使用 JS 判断是否为周末(2020-5-17更)

//是否在星期六和星期天
function weekTime() {
    var dateParams = new Date();
    if (dateParams.getDay() == 0 || dateParams.getDay() == 6) {
        //0--sunday, 6--saturday
        return false;
    } else {
        return true;
    }
}

2、在 Vue 中 Date 类型转换成 String(2020-5-18更)

问题描述

        当字段为 Date 类型时,前端有几种不同的展示方式,较为常见的有如 时间戳(如:1381419600)、标准时间格式(如:2017-02-28T16:00:00.000+0000)和我们熟悉且可读性较高的 “ 年-月-日 ” 格式(如:2020-01-01)。当数据库中存储的为前两种日期格式时,我们需要将其转换成 “ 年-月-日 ” 来 增加我们的可读性

// ------- 安装 moment.js ---------
npm install moment

// ------- 调用 ---------
var moment = require('moment');
moment().format();

// ----- 实际应用 -----
timestampToTime (dateParams) {
      var moment = require('moment')
      return moment(dateParams).format('YYYY-MM-DD HH:mm:ss')
}

timestampToTime(dateParams)

MySQL 数据库

1、MySQL 获取日期数据中的月份(2020-5-17更)

需求描述

        现有数据 “ 2020-01-01 ”,需要提取出该数据所处的月份为 “ 1 月份 ” 的信息

// 获取当前日期月份
select month(now())  // =>5(当前为5月)

// 获取当前日期的上一个月份
select month(now())-1  // => 4

// 获取日期字段中的月份,dateParams 为表中日期类型的字段,形如:2020-01-01
select month(dateParams) from [table]

// 查询出当月的记录 => 将字段中的月份提取出来,与当前的月份进行比对
select * from [table] where month(Now())=month(dateParams)

Java

1、Java 中计算两个日期相差的天数(2020-5-18更)

需求描述

        场景中对于需要计算两个日期相差天数,并进一步进行逻辑判断。

思路描述

        将日期转化为用毫秒来代替,两者相减之后,再转化成天数。

// 设置日期格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式

// 获取时间
Date dateParams = df.parse(borrowId.getDate());//获取的时间

// 将时间转换为毫秒
long nowSecond = new Date().getTime();
long oldSecond = dateParams.getTime();

// 时间相减
long second = nowSecond-birthdaySecond;

//将时间进行格式转换,转换成日
System.out.println(second/1000/60/60/24 + "天");  // 输出 => XXX 天

 

你可能感兴趣的:(前端,Java,数据库,mysql,数据库,java,javascript,sql)