小程序实现 时间格式化 公共方法封装

注意 时间戳两种格式 1.XXXXXX 2. XXXXXX000

时间戳分为10位和13位,date默认精度是毫秒,也就是说生成的时间戳就是13位的,有的时间戳默认就是10位的,因为其精度是秒。
13位时间戳如何转换成10位时间戳
第一种:通过substring方法,将13位的时间戳最后三位数字截取
第二种:将13位时间戳除以1000取整


  • 第一步 封装
		function formatTime(date) {
	    var year = date.getFullYear()
	    var month = date.getMonth() + 1
	    var day = date.getDate()
	
	    var hour = date.getHours()
	    var minute = date.getMinutes()
	    var second = date.getSeconds()
	
	
	    return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
	}
	
	function formatNumber(n) {
	    n = n.toString()
	    return n[1] ? n : '0' + n
	}
	
	/** 
	 * 时间戳转化为年 月 日 时 分 秒 
	 * number: 传入时间戳 
	 * format:返回格式,支持自定义,但参数必须与formateArr里保持一致 
	*/
	function formatTimeTwo(number, format) {
	
	    var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
	    var returnArr = [];
	    // var date = new Date(number * 1000);
	    var date = new Date(number);
	    returnArr.push(date.getFullYear());
	    returnArr.push(formatNumber(date.getMonth() + 1));
	    returnArr.push(formatNumber(date.getDate()));
	
	    returnArr.push(formatNumber(date.getHours()));
	    returnArr.push(formatNumber(date.getMinutes()));
	    returnArr.push(formatNumber(date.getSeconds()));
	
	    for (var i in returnArr) {
	        format = format.replace(formateArr[i], returnArr[i]);
	    }
	    return format;
	}
	function formatBrushDuration(time){
	    var theTime = time //时间戳(秒)
	    var minute= 0; // 分
	    var hour = 0;//小时
	    if(theTime > 60){
	    minute= parseInt(theTime / 60);
	    theTime = parseInt(theTime % 60);
	    if(minute> 60){
	        hour = parseInt(minute/ 60);
	        middle = parseInt(minute% 60);
	    }
	    }
	    var result= "" + parseInt(theTime) + "s" 
	    if(minute> 0){
	    result= "" + parseInt(minute) + "m" + result;
	    }
	    if(hour > 0){
	    result= "" + parseInt(hour) + "h" + result;
	    }
	    return result;
	}
	
	module.exports = {
	    formatTime: formatTime,
	    formatTimeTwo: formatTimeTwo,
	    formatBrushDuration:formatBrushDuration
	}
  • 第二步 引用
var time = require('../../utils/common.js');
  • 第三步 使用
  			item.BrushTime=time.formatTimeTwo(new Date(brushTime), 'h:m');
               item.TimeLong=time.formatBrushDuration(item.TimeLong);
Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐