如何利用JS获取当前具体日期时间与获取前一天日期时间
Date curDate = new Date(); var nowDate = curDate.getTime(); var preDate = new Date(curDate.getTime() - 24*60*60*1000); //前一天 var nextDate = new Date(curDate.getTime() + 24*60*60*1000); //后一天 //获取前一天具体日期如下 var preDate = new Date(curDate.getTime() - 24*60*60*1000).format("yyyy-MM-dd"); //getTime() 方法可返回距 1970 年 1 月 1 日之间的毫秒数。
在项目中获取当前时间是从后台处理来进行获取的,然后通过ajax请求接口,返回给前端,我也不知道为什么要这么进行,不知道谁写的,暂时先放着吧,供大家观看,后面我会贴出来js获取当前时间的方法。
** Controller代码**
@RequestMapping(value = "/receiveSysDate", method = {RequestMethod.GET}) @ResponseBody public long receiveSysDate() { long result = 0L; try { result = new Date().getTime(); } catch (Exception e) { logger.error(e.getMessage(), e); } return result; }
js请求代码
XX.receiveSyDate = function () { var now = null; $.ajax({ type: "get", url: $("#path").val() + "/XX/XX/receiveSysDate", cache: false, //禁用缓存 dataType: "json", async: false, // 同步 success: function (data) { now = data; }, error: function (data) { } }); return new Date(now); }
还锻炼了Ajax的使用,真是一举多得,哈哈
在这里接收并处理,拼接昨天的时间
// 获取当前时间 var now = XX.receiveSyDate();//Tue Jun 16 2020 15:42:47 GMT+0800 (中国标准时间) // 拼接昨天时间 var yesd = now.getFullYear() + '-' + '0' + (now.getMonth() + 1) + '-' + (now.getDate() - 1);//2020-06-15 $('.data-range-picker>input:eq(0)').val(this.datetimeUtil.dateFormat(now, "yyyy") + "-01-03");//指定具体的日期 $('.data-range-picker>input:eq(1)').val(yesd);//指定昨天的日期
同时这里需要对获取的时间数据now进行一下序列化
if (!window["XX"]) { window.XX= {}; } XX.datetimeUtil = { //格式化显示日期时间 //yyyy年份 //MM月份 //dd天 //hh小时 //mm分钟 //ss秒 dateFormat: function (date, format) { if (typeof (date) !== "object" || !date.getFullYear) { return; } var result = format; if (format.indexOf("yyyy") > -1) { result = result.replace("yyyy", date.getFullYear()); } if (format.indexOf("MM") > -1) { result = result.replace("MM", shinow.stringUtil.formatLength(date.getMonth() + 1, 2)); } if (format.indexOf("dd") > -1) { result = result.replace("dd", shinow.stringUtil.formatLength(date.getDate(), 2)); } if (format.indexOf("hh") > -1) { result = result.replace("hh", shinow.stringUtil.formatLength(date.getHours(), 2)); } if (format.indexOf("mm") > -1) { result = result.replace("mm", shinow.stringUtil.formatLength(date.getMinutes(), 2)); } if (format.indexOf("ss") > -1) { result = result.replace("ss", shinow.stringUtil.formatLength(date.getSeconds(), 2)); } return result; }, //根据月份值获取最后一天 getLastDayByMonth: function (year, month) { switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 4: case 6: case 9: case 11: return 30; case 2: return year % 4 === 0 ? 29 : 28; } }, getMonDiff: function (startTime, endTime) { startTime = new Date(startTime); endTime = new Date(endTime); var date2Mon; var startDate = startTime.getDate() + startTime.getHours() / 24 + startTime.getMinutes() / 24 / 60; var endDate = endTime.getDate() + endTime.getHours() / 24 + endTime.getMinutes() / 24 / 60; if (endDate >= startDate) { date2Mon = 0; } else { date2Mon = -1; } return (endTime.getYear() - startTime.getYear()) * 12 + endTime.getMonth() - startTime.getMonth() + date2Mon; }, getMonthBetween: function (startTime, endTime) { var result = []; var nums = shinow.datetimeUtil.getMonDiff(startTime, endTime); startTime = startTime.replace(/-/g, ""); endTime = endTime.replace(/-/g, ""); var y1 = parseInt(startTime.substr(0, 4)); var m1 = parseInt(startTime.substr(4, 2)) - 1; var y2 = parseInt(endTime.substr(0, 4)); var m2 = parseInt(endTime.substr(4, 2)) - 1; do { var d = new Date(y1, m1++, 1); var y = d.getFullYear(); var m = d.getMonth() + 1; var mm = shinow.stringUtil.getDateLength(m); var s = y + '-' + mm; result.push(s); } while (d < new Date(y2, m2, 1)); var testArray = []; if (nums != 0) { testArray = result.slice(0, nums); } else { testArray = result; } return testArray; } };
感觉有帮助就点个关注吧!!