重操旧业,继续码农生活,温故vue moment类库和new Date()

技术方面,越使用越熟练,越放越陌生,确实是这样。这几年在技术方面的投入减少了很多,工作职责发生了一些变化,更多的是一些比较杂的事情,工作本身也是心力交瘁。和领导沟通了下,说了些自己的想法,如果全局的事情做不好,就把具体的事情做好,也算是尽自己一些绵簿之力,至于职业或者未来可见的天花板,就这样吧,选择就是这样,失去了一些东西也得到了一些东西,如果无法改变现状就改变自己。人改变自己都很难.

从最初中断的地方重新开始,比如前端当年用的Vue 2,VS还是用的VS2019.几年过去了,需要再温故知新下了。

从一个开胃小菜开始。Vue中moment的使用,最近开发了一个小功能,用到了moment中的一些日期函数,查了一些资料,熟悉了下moment中常用的日期功能。

在Vue项目中,new Date()是JavaScript内置的对象,用于处理日期和时间;而moment是一个第三方库,提供了更丰富的日期操作功能。以下是它们的主要区别:

‌基本性质‌:

new Date()是原生JavaScript对象,无需额外安装即可使用;moment是一个独立的库,需要通过npm或yarn安装后引入。‌

‌功能丰富度‌:

new Date()支持基本的日期获取(如getFullYear、getMonth)和格式化方法(如toLocaleString),但复杂操作(如日期加减、相对时间计算)需要手动实现;moment提供了大量内置方法,例如format格式化、startOf/endOf设置日期边界、add/subtract进行时间计算,以及多语言支持。‌

‌使用便捷性‌:

new Date()直接通过实例调用方法,语法简单但灵活性有限;moment通过链式调用简化操作,例如moment().format('YYYY-MM-DD')可直接输出指定格式,且支持自定义解析和过滤器。‌

‌性能与体积‌:

new Date()作为原生对象,无额外体积开销;moment库体积较大(约未压缩时几十KB),可能影响项目加载速度,而轻量级替代品如Dayjs更注重性能。‌

6

‌国际化支持‌:

new Date()的格式化依赖本地环境设置,国际化处理需额外代码;moment内置多语言支持,可通过locale方法轻松切换中文等语言。‌

在实际开发中,若需求简单,new Date()足够高效;若涉及复杂日期逻辑(如时间范围筛选、格式转换),moment能提升开发效率,但需权衡体积影响。‌

1.moment 是一个 JavaScript 日期处理类库。

(1)引入库:npm install moment

(2)在main.js中全局引入,也可单独引入

import moment from "moment"

Vue.prototype.$moment = moment;

2.new Date()

let time = new Date(); //获取当前时间

let year = time.getFullYear(); //获取年 2025

let month = time.getMonth() + 1; //获取月 12

let day = time.getDate(); //获取天 15

let h = time.getHours(); //获取小时 21

let m = time.getMinutes(); //获取分钟 56

let s = time.getSeconds(); //获取秒 37

let weekDay = time.getDay(); //获取星期

相关推荐
像我这样帅的人丶你还16 小时前
别再让JS耽误你进步了。
css·vue.js
@yanyu66616 小时前
07-引入element布局及spring boot完善后端
javascript·vue.js·spring boot
王霸天16 小时前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化
悟空瞎说16 小时前
深入 Vue3 响应式:为什么有的要加.value,有的不用?从设计到源码彻底讲透
前端·vue.js
SuperEugene19 小时前
前端通用基础组件设计:按钮/输入框/弹窗,统一设计标准|组件化设计基础篇
前端·javascript·vue.js·架构
我命由我1234519 小时前
在 React 项目中,可以执行 npm start 命令,但是,无法执行 npm build 命令
前端·javascript·vue.js·react.js·前端框架·json·ecmascript
aidou131419 小时前
Vue3自定义实现日期选择器(可单选或多选)
前端·javascript·vue.js·日期选择器·transition
卡梅德生物科技小能手19 小时前
CD40LG(CD40配体)靶点深度解析:免疫调控机制与抗体药物工程化策略
经验分享·深度学习·生活
李李李勃谦20 小时前
Flutter 框架跨平台鸿蒙开发 - 节气生活
flutter·华为·生活·harmonyos
忆琳20 小时前
Vue3 优雅解决单引号注入问题:自定义指令 + 全局插件双方案
vue.js·element