1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > js 判断时间戳是否为同一天

js 判断时间戳是否为同一天

时间:2021-01-09 06:43:48

相关推荐

js 判断时间戳是否为同一天

场景:后台PHP给的为一组列表,产品需求是将浏览量按天展示,则需要将这一个大数组转为按天的二维数组,利用对天的循环,再每天的数据进行循环,两层嵌套比较好渲染数据。

1.html

<!DOCTYPE html><html><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script src="/jquery/1.8.3/jquery.js"></script></head><body><script type="text/javascript">var list = [];var nowTime = formatTime(new Date(), "yyyy-MM-dd");var ii = 0;var oldObjArr=[{ "time": 1547088550, "msg":"我是1" }, { "time": 1547088509, "msg":"我是2" }, { "time": 1547021318, "msg":"我是3" }, { "time": 1547021248, "msg":"我是4" }, { "time": 1547014081, "msg":"我是5" }, { "time": 1546926131, "msg":"我是6" }, { "time": 1546926064, "msg":"我是7" }, { "time": 1546839731, "msg":"我是8" }, { "time": 1546839664, "msg":"我是9" }, { "time": 1546753331, "msg":"我是10" }, { "time": 1546753264, "msg":"我是11" }, { "time": 1546666931, "msg":"我是12" }, { "time": 1546666864, "msg":"我是13" }];var objArr = [{ "time": 1547088550, "msg":"我是1" }, { "time": 1547088509, "msg":"我是2" }, { "time": 1547021318, "msg":"我是3" }, { "time": 1547021248, "msg":"我是4" }, { "time": 1547014081, "msg":"我是5" }, { "time": 1546926131, "msg":"我是6" }, { "time": 1546926064, "msg":"我是7" }, { "time": 1546839731, "msg":"我是8" }, { "time": 1546839664, "msg":"我是9" }, { "time": 1546753331, "msg":"我是10" }, { "time": 1546753264, "msg":"我是11" }, { "time": 1546666931, "msg":"我是12" }, { "time": 1546666864, "msg":"我是13" }];console.log("oldObjArr", oldObjArr);list[ii] = { title: '', list: [] };for(var i = 0;i < objArr.length; i++) {objArr[i].time = formatTime(new Date(objArr[i].time * 1000), "yyyy-MM-dd");if(objArr[i].time == nowTime) {list[ii].title = nowTime;list[ii].list.push(objArr[i]);} else {ii = ii + 1;list[ii] = { title: '', list: [] };nowTime = objArr[i].time;list[ii].title = nowTime;list[ii].list.push(objArr[i]);}}console.log("newObjArr", objArr);console.log("list", list);//时间戳转为时间字符串function formatTime(date, fmt) {var o = {"M+": date.getMonth() + 1, // 月份"d+": date.getDate(), // 日"h+": date.getHours(), // 小时"m+": date.getMinutes(), // 分"s+": date.getSeconds(), // 秒"q+": Math.floor((date.getMonth() + 3) / 3), // 季度"S": date.getMilliseconds() // 毫秒};if(/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.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;}</script></body></html>

2.效果

3.说明

(1)PHP的时间戳和标准时间戳是1000倍的关系;

(2)判断时间是否为同一天,直接通过事件戳比较不方便,如果都转为日期字符串,那么比较起来会比较方便;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。