js获取当前时间和把时间戳转换为日期格式以及封装

今天给你讲的有3个内容
1.js获取当前时间
2.js时间戳转换为日期格式
3.封装

js获取当前时间

	<div>当前时间:{{time}}</div>
	// 直接调用获取,返回的就是当前时间
	this.time = this.formatDate()
	formatDate(dateTime ) {
	  var	dateTime = new Date(); 
      var year = dateTime.getFullYear(); ///取得4位数的年份
      var month = dateTime.getMonth()+1;//js从0开始取
      var date = dateTime.getDate(); //日期
      var hour = dateTime.getHours(); //时
      var minutes = dateTime.getMinutes(); //分
      var second = dateTime.getSeconds(); //秒
      if(month<10){
          month = "0" + month;
      }
      if(date<10){
          date = "0" + date;
      }
      if(hour <10){
          hour = "0" + hour;
      }
      if(minutes <10){
          minutes = "0" + minutes;
      }
      if(second <10){
          second = "0" + second ;
      }
      return year+"-"+month+"-"+date+" "+hour+":"+minutes+":"+second; //当前时间
    },

这就是结果
在这里插入图片描述

js时间戳转换为日期格式

这个在第一个的基础扩展

  1. 可以直接获取时间戳 var time = new Date().getTime(); 或者直接传入时间戳
  2. 调用 this.time =this.formatDate(new Date(time))
    注意 把这个formatDate方法中的var dateTime = new Date();去掉
    在这里插入图片描述

日期格式转时间戳

var date = new Date('2014-04-23 18:55:49:123');
    // 有三种方式获取
    var time1 = date.getTime();
    var time2 = date.valueOf();
    var time3 = Date.parse(date);
    console.log(time1);//1398250549123
    console.log(time2);//1398250549123
    console.log(time3);//1398250549000

封装

  • 1
const formatDate = function(fmt,date){
        let ret;
        if(!date){
            date = new Date()
        }
        let opt = {
            "Y+":date.getFullYear().toString(),
            "M+":(date.getMonth() + 1).toString(),
            "D+":date.getDate().toString(),
            "h+":date.getHours().toString(),
            "m+":date.getMinutes().toString(),
            "s+":date.getSeconds().toString()
        }
        for(var k in opt){
            ret = new RegExp("("+ k +")").exec(fmt)
            if(ret){
                fmt = fmt.replace(ret[0], (ret[0].length == 1) ? (opt[k]) : (opt[k].padStart(ret[0].length, "0")))
            }
        }
        return fmt
    };
    
    console.log(formatDate( "YYYY-MM-DD hh:mm:ss"))//调用
   	console.log(formatDate('YYYY-MM-DD'))//调用
    console.log(formatDate("hh:mm:ss"))//调用
  • 2
//格式化日期
    function dateFormat(thisDate, fmt) {
        var o = {
            "M+": thisDate.getMonth() + 1,
            "d+": thisDate.getDate(),
            "h+": thisDate.getHours(),
            "m+": thisDate.getMinutes(),
            "s+": thisDate.getSeconds(),
            "q+": Math.floor((thisDate.getMonth() + 3) / 3),
            "S": thisDate.getMilliseconds()
        };
        if (/(y+)/.test(fmt))
            fmt = fmt.replace(RegExp.$1, (thisDate.getFullYear() + "").substr(4 - RegExp.$1.length));
        for (var k in o)
            if (new RegExp("(" + k + ")").test(fmt))
                fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
        return fmt;
    }

    var Date=new Date();
    console.log(dateFormat(Date, "yyyy-MM-dd hh:mm:ss"))//调用
    console.log(dateFormat(Date, "yyyy-MM-dd"))//调用
    console.log(dateFormat(Date, "hh:mm:ss"))//调用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值