vue基于momentJs应用各类时间场景

导读:本篇文章讲解 vue基于momentJs应用各类时间场景,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

前言

momentJs 是一个轻量级的 js 时间处理类库,其使用简单,方便了日常开发中对时间的操作,提高了开发效率。


安装

npm install moment --save
cnpm install moment --save

引用

import moment from "moment";
//引入中文包
import 'moment/locale/zh-cn';

配置方法

1. 日期格式化(format

实例:

moment().format("YYYY年MM月DD日"); // 2022年07月11日

2. 相对时间(fromNow)

实例:

moment().startOf('hour').fromNow(); // 12 分钟前

3. 日历时间(calendar)

实例:

moment().add(4, 'days').calendar(); // 本周五10:11

4. 获取 subtract 方法

参数:

.subtract(Number, String);

实例:

// years:months:days:moment().subtract(1, 'months') .format("YYYY-MM-DD HH:mm:ss"); // 2022-06-11 10:40:03

5. 获取 get 方法

实例:

// years:months:days:moment().get('year') // 2022

6. 开始 startOf 方法

参数:

.startOf(String);

实例:

moment().startOf('day').format("YYYY-MM-DD HH:mm:ss"); // 2022-07-11 00:00:00

7. 结束 endOf 方法

参数:

.endOf(String);

实例:

moment().endOf("day").format("YYYY-MM-DD HH:mm:ss"); // 2022-07-11 23:59:59

除了以上这些,momentJs 中还有非常多的方法,这里就不一一列举,大家感兴趣可以直接到官方文档地址查看:http://momentjs.cn/


常用的获取日期方法

1.获取当前日期

let dateTime = moment().format("YYYY-MM-DD HH:mm:ss");
console.log(dateTime); // // 2022-07-11 11:07:50

2.获取昨天的日期

let dateTime = moment().subtract(1,'day').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-07-10 11:27:09

3.获取本周第一天

let dateTime = moment().weekday(0).format('YYYY-MM-DD HH:mm:ss'); 
console.log(dateTime); // 2022-07-11 11:29:32

4.获取本周最后一天

let dateTime = moment().weekday(6).format("YYYY-MM-DD HH:mm:ss");
console.log(dateTime); // 2022-07-17 11:30:20

5.获取本月第一天

let dateTime = moment().startOf('month').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-07-01 00:00:00

6.获取本月最后一天

let dateTime = moment().endOf('month').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-07-31 23:59:59

7.获取本月最后一天

let dateTime = moment().endOf('month').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-07-31 23:59:59

8.获取上月第一天

let dateTime = moment().subtract(1,'month').startOf('month').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-06-01 00:00:00

9.获取上月最后一天

let dateTime = moment().subtract(1,'month').endOf('month').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-06-30 23:59:59

10.获取本年第一天

let dateTime = moment().startOf('year').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2022-01-01 00:00:00

11.获取本年最后一天

let dateTime = moment().subtract(1,'year').endOf('year').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2021-12-31 23:59:59

12.获取去年第一天

let dateTime = moment().subtract(1,'year').startOf('year').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2021-01-01 00:00:00

13.获取去年最后一天

let dateTime = moment().subtract(1,'year').endOf('year').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2021-12-31 23:59:59

14.获取去年的今天

let dateTime = moment().subtract(1,'year').format('YYYY-MM-DD HH:mm:ss');
console.log(dateTime); // 2021-07-11 11:37:01

15.获取今天周几

let dateTime = moment().format('dddd');
console.log(dateTime); // 星期四

总结

有关于网上 date-fns.jsmoment.js 的对比也是层出不穷,其实我在使用两款插件的过程中觉得它们都互有不足,但又各有各的优势,比如 moment.js 体积比较大,而 date-fns.js 体积非常小;又或者 moment.js 支持全局引入,而 date-fns.js 却不支持,诸如此类的对比我就不多做赘述了,如果你对 date-fns.js 感兴趣的话,也可以参考博主的另一篇文章 JavaScript日期库之date-fn.js

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/79364.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!