利用java script获取两个日期区间内数组的方法
2016-05-03 15:34
489 查看
方法1:
思路:对日期进行拆分,每次增加一天,循环比较日期大小直至相同为止。<html> <head> <title>Get data array</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script src="yourpath/jquery-1.11.1.min.js"></script> <script src="yourpath/bootstrap.min.js"></script> <script> $(function () { var datatmp = dataScope('2014-05-01', '2015-06-10'); for (var i = 0; i < datatmp.length; i++) { document.write(datatmp[i] + "<br>"); } }); </script> <script> function dataScope(value1, value2) { var getDate = function (str) { var tempDate = new Date(); var list = str.split("-"); tempDate.setFullYear(list[0]); tempDate.setMonth(list[1] - 1); tempDate.setDate(list[2]); return tempDate; } var date1 = getDate(value1); var date2 = getDate(value2); if (date1 > date2) { var tempDate = date1; date1 = date2; date2 = tempDate; } date1.setDate(date1.getDate()); var dateArr = []; var i = 0; while (!(date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth() && date1.getDate() === date2.getDate() + 1)) { dateArr[i] = date1.getFullYear() + "-" + ((date1.getMonth() + 1) < 10 ? ('0' + (date1.getMonth() + 1)) : (date1.getMonth() + 1)) + "-" + (date1.getDate() < 10 ? ('0' + (date1.getDate())) : (date1.getDate())); i++; date1.setDate(date1.getDate() + 1); } return dateArr; } </script> </body> </html>
方法2:
思路:利用utc时间比较日期大小,每次增加一天的utc时间,直至日期相同。<!DOCTYPE html> <!-- To change this license header, choose License Headers in Project Properties. To change this template file, choose Tools | Templates and open the template in the editor. --> <html> <head> <title>TODO supply a title</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <script src="yourpath/jquery-1.11.1.min.js"></script> <script src="yourpath/bootstrap.min.js"></script> <script> $(function () { var datatmp = dataScope('2014-05-01', '2015-05-10'); for (var i = 0; i < datatmp.length; i++) { document.write(datatmp[i] + "<br>"); } }); </script> <script> function dataScope(start, end) { var datatext = []; var startindex = new Date(start).valueOf(); var endindex = new Date(end).valueOf(); var textlength = (endindex - startindex) / 86400000; for (var i = 0; i <= textlength; i++) { var date = new Date(startindex); Y = date.getFullYear() + '-'; M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()); // console.log(Y + M + D); var tmp = Y + M + D; datatext.push(tmp); startindex += 86400000; } return datatext; } </script> </body> </html>
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Extjs4.0 最新最全视频教程
- Javascript中toFixed方法的改进
- JavaScript演示排序算法
- 2015-2016网页设计趋势分析 Web Design of Trends
- 5个常见可用性错误和解决方案
- jQuery Ajax 跨域调用
- 移动端的长按事件
- jquery教程靠边站,一分钱不花让你免费学会jquery
- JQuery+Strusts1.x无刷新登录
- js数组实现图片轮播
- $.ajax()方法详解
- jQuery ajax - ajax() 方法
- JavaScript 各种遍历方式详解
- 数组方法汇总
- jQuery Html控件基本操作(日常收集整理)
- jQuery插件实现文字无缝向上滚动效果代码
- jQuery菜单插件用法实例
- JQuery 初体验(建议学习jquery)
- 基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)