Vue

时间格式转换

芸殇
2022-07-05 / 0 评论 / 393 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年09月18日,已超过1504天没有更新,若内容或图片失效,请留言反馈。

时间格式转换

  在日常代码中,我们会遇到要时间时间的需求,常规的话我们都是使用 date 函数来获取时间然后对获取到的时间使用各种函数来获取想要的值,最后做一个组装。

常规方法

// 以前我们想要获取 年/月/日 时:分:秒 这种格式的时间需要写很多函数进行拼接
// 获取当前时间
let currentTime = new Date()
// 获取的年份为多少
let y = currentTime.getFullYear() 
// 获取当前时间的月份为多少,因为月份的返回值为 0 - 11,所以想要获得当前月份需要给返回值 + 1
let m = currentTime.getMonth() + 1
// 获取当前时间为日
let d = currentTime.getDate()
// 获取当前时间的小时
let h = currentTime.getHours()
// 获取当前时间的分钟
let mi = currentTime.getMinutes()
// 获取当前时间的秒
let s = currentTime.getSeconds()
// 将刚刚获得的时间各部分进行组装就可以获得想要的格式,比如我想在要获得 年/月/日 时:分:秒 这个格式
let timeFormat = y + '/' + m + '/' + d + ' ' + h + ':' + mi + ':' + s

// 还有另外一种简单的方法,也可以获得上述格式
// toLocaleDateString 方法可以直接获取当前时间的 年月日 时间,返回的格式为 年/月/日
let date = currentTime.toLocaleDateString()
// toLocaleTimeString 方法可以获取到当前时间的 时分秒,返回的是12小时制的时间,返回格式为 时:分:秒
let time = currentTime.toLocaleTimeString()
// 如果想要获取 24 小时制的时间格式,则需要在 toLocaleDateString 函数中传入参数
let time = currentTime.toLocaleTimeString('chinese', { hour12: false })
timeFormat = date + ' ' + time

moment 库

  我们还可以使用 moment 库来完成对时间格式的操作。首先我们需要在项目中安装 moment 库。

npm i moment --save

  在安装完成后在需要使用的组件中进行引入即可完成使用

import moment from 'moment'
let time = moment(new Date())
time = time.format('YYYY/MM/DD HH:mm:ss') // 返回值为 年/月/日 时:分:秒
time = time.format('YYYY-MM-DD HH:mm:ss') // 返回值为 年-月-日 时:分:秒
0

评论 (0)

取消