vue对Date的扩展,时间戳转指定日期格式

2022-05-10 16:03:01

1.vue定义全局方法要在main.js文件里去定义,直接进入main.js文件

// 对Date的扩展,将 Date 转化为指定格式的String
Date.prototype.Format=function(value, fmt){//第一个参数,要转化的时间戳,第二个参数想要转换的格式   (new Date()).Format(1543905825,"yyyy-MM-dd hh:mm:ss")  ///毫秒  10位let values=null;if(!value){
    values=newDate();//第一个参数为空默认当前时间}else{
    values=newDate(value*1000);//后台返回的时间戳转为标准格式///毫秒  13位}let o={"M+": values.getMonth()+1,//月份"d+": values.getDate(),//日"h+": values.getHours(),//小时"m+": values.getMinutes(),//分"s+": values.getSeconds(),//秒"q+": Math.floor((values.getMonth()+3)/3)//季度// "S": value.getMilliseconds() //毫秒};if(/(y+)/.test(fmt))
    fmt= fmt.replace(
      RegExp.$1,(values.getFullYear()+"").substr(4- RegExp.$1.length));for(let kin o)if(newRegExp("("+ k+")").test(fmt))
      fmt= fmt.replace(
        RegExp.$1,
        RegExp.$1.length==1? o[k]:("00"+ o[k]).substr((""+ o[k]).length));return fmt;};

该方法需要传入两个参数,10位时间戳(秒)(可在代码里自行修改为默认13位(毫秒))和想输出的日期格式,时间戳不输入为’’,时,默认当前时间

values=newDate(value*1000);//后台返回的时间戳转为标准格式///毫秒  13位

2.在组件使用——html

<span>{{(newDate()).Format(1583136899,"yyyy.MM.dd / hh:mm:ss")}}</span>//输出: 2020.03.02 / 16:14:59

3.在组件使用——js

let Fdata=(newDate()).Format(1583136899,"yyyy.MM.dd");//时间戳不输入,默认当前时间
      console.log(Fdata);//输出: 2020.03.02
  • 作者:Jason Xian
  • 原文链接:https://blog.csdn.net/weixin_43868943/article/details/104613449
    更新时间:2022-05-10 16:03:01