赞
踩
记录一个开发中遇到的问题:在开启***开关页中,围栏是否开启根据checkbox的勾选和不勾选,生成了开启和关闭的字样,但没考虑到围栏时间的生效问题,比如,10:00开启了8:00至9:00的围栏,生成字样是关闭,因此要考虑一个结束时间endTime是否在当前时间之后,是的则认为是生效,
用到下面的方法:
setHours() 方法根据本地时间为一个日期对象设置小时数,返回从1970-01-01 00:00:00 UTC 到更新后的 日期 对象实例所表示时间的毫秒数。
这里的思路就是将时分秒的时间转换为当前的时分秒,并置换为毫秒大小判断时间的先后。
//判断当前时间失效 t1比当前时间晚则返回true,否则时间失效,f
CompareDate(t1, t2) {
var date = new Date();
var a = t1.split(":");
var b = t2.split(":");
return date.setHours(a[0], a[1]) > date.setHours(b[0], b[1]);
},
另外获取当前时间点的方法,一般来说new Date()可返回当日的日期和时间,而其中一个方法 new Date().toLocaleString 默认设置为12小时
,即会显示上午、下午,如果想设置24小时制 则用:var time=new Date().toLocaleString('chinese',{hour12:false});
,toLocaleTimeString() 方法返回该日期对象时间部分的字符串,因此他们获取到的是 HH:mm:ss。
//获取当前时间
var currTime = new Date().toLocaleTimeString("chinese", {
hour12: false
});
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。