1.ios兼容性问题
对于时间格式 ios不能识别横杠
获取本年份的起止时间
`/***`
`\* 得到本年的起止日期`
`\*`
`*/`
`getCurrentYear() {`
`//起止日期数组`
`var startStop = new Array();`
`//获取当前时间`
`var currentDate = new Date();`
`//获得当前年份4位年`
`var currentYear = currentDate.getFullYear();`
`//本年第一天`
`var currentYearFirstDate = new Date(currentYear, 0, 1).format("yyyy-MM-dd");`
`//本年最后一天`
`var currentYearLastDate = new Date(currentYear, 11, 31).format("yyyy-MM-dd");`
`//添加至数组`
`startStop.push(currentYearFirstDate);`
`startStop.push(currentYearLastDate);`
`//返回`
`return startStop;`
`},`
处理时间将时间格式转换成上图格式
`Date.prototype.format = function (fmt) {`
`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;`
`}`
2.倒计时函数
// 倒计时时间方法
TimeDown(endDateStr) {
let clear = null
let _this = this;
//结束时间
var endDate = new Date(endDateStr.replace(/\-/g, '/'));
//当前时间
var nowDate = new Date();
//相差的总秒数
var totalSeconds = parseInt((endDate - nowDate) / 1000);
//天数
var days = Math.floor(totalSeconds / (60 * 60 * 24)) < 10 ? "0" + Math.floor(totalSeconds / (60 * 60 * 24)) : Math.floor(totalSeconds / (60 * 60 * 24));
//取模(余数)
let modulo = totalSeconds % (60 * 60 * 24);
//小时数
let hours = Math.floor(modulo / (60 * 60)) < 10 ? "0" + Math.floor(modulo / (60 * 60)) : Math.floor(modulo / (60 * 60));
modulo = modulo % (60 * 60);
//分钟
let minute = Math.floor(modulo / 60) < 10 ? "0" + Math.floor(modulo / 60) : Math.floor(modulo / 60);
//秒
let seconds = Math.floor(modulo % 60) < 10 ? "0" + Math.floor(modulo % 60) : Math.floor(modulo % 60);
//输出到页面
let lastTime = {
days,
hours,
minute,
seconds
}
//延迟一秒执行自己
if (totalSeconds < 0) {
clearTimeout(clear)
// _this.initData(_this.data.presentId)
} else {
clear = setTimeout(function () {
_this.TimeDown(endDateStr);
_this.setData({
lastTime
})
}, 1000)
}
return lastTime
},
3.获取当前年份起止时间
//起止日期数组
var startStop = new Array();
//获取当前时间
var currentDate = new Date();
//获得当前年份4位年
var currentYear = currentDate.getFullYear();
//本年第一天 获取去年的第一天 currentYear-1
var currentYearFirstDate = new Date(currentYear, 0, 1).format("yyyy-MM-dd");
//本年最后一天
var currentYearLastDate = new Date(currentYear, 11, 31).format("yyyy-MM-dd");
//添加至数组
startStop.push(currentYearFirstDate);
startStop.push(currentYearLastDate);
//返回
return startStop;
4.时间格式转换
日期对象转换成字符串toLocaleDateString()
let initDate = new Date().toLocaleDateString().replace(/\//g, "-")
.push(currentYearLastDate);
//返回
return startStop;
##### 4.时间格式转换
日期对象转换成字符串**toLocaleDateString()**
let initDate = new Date().toLocaleDateString().replace(/\//g, "-")