本文实例为大家分享了微信小程序实现日期格式化和倒计时的具体代码,供大家参考,具体内容如下
首先看看日期怎么格式化
第一种:
Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.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; }
然后是调用this.value1=new Date().Format("yyyy-MM-dd HH:MM:SS")
第二种
1.中国标准时间格式化:
formatDateTime:function(theDate) { var _hour = theDate.getHours(); var _minute = theDate.getMinutes(); var _second = theDate.getSeconds(); var _year = theDate.getFullYear() var _month = theDate.getMonth(); var _date = theDate.getDate(); if (_hour < 10) { _hour ="0" + _hour } if (_minute < 10) { _minute = "0" + _minute } if (_second < 10) { _second = "0" + _second } _month = _month + 1 if (_month < 10) { _month = "0" + _month; } if (_date < 10) { _date ="0" + _date } var time= _year + "-" + _month + "-" + _date + " " + _hour + ":" + _minute + ":" + _second;// var time = new Date();// var formatTime = formatDateTime(time);// 返回结果:// Tue Jun 06 2017 15:31:09 GMT+ 0800(中国标准时间)// 2017 - 06 - 06 15:31:09//clock为在data中定义的空变量,存放转化好的日期 this.setData({ clock: time })},
2、把格式化时间转换为毫秒数
var formatTimeS = new Date('2017-06-06 15:31:09').getTime();
返回结果:1496734269900
3、把毫秒数转换为标准时间
var formatTimeS = new Date(1496734269900);
返回结果:Tue Jun 06 201715:31:09 GMT+0800(中国标准时间)
二、实现倒计时
//倒计时:其中time_canshu为传入的毫秒数date_format: function (time_canshu) { // let formatTime1 = new Date().getTime(); // let formatTime2 = new Date('2018-04-24 15:31:09').getTime(); // let formatTimeS = new Date(formatTime2 - formatTime1); var none = '00:00:00'; if (formatTimeS<=0){ this.setData({ clock: none })} else { // 秒数 letsecond = Math.floor(time_canshu / 1000); // 小时位 lethr = Math.floor(second / 3600); // 分钟位 letmin = Math.floor((second - hr * 3600) /60); // 秒位 letsec = second % 60;// equal to => var sec = second % 60; if (hr <= 9) hr ='0' + hr; if (min <= 9) min ='0' + min; if (sec <= 9) sec ='0' + sec; lettime = hr + ":" + min + ":" + sec + " "; this.setData({ clock: time }) }},
新闻热点
疑难解答