详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)


Posted in Javascript onOctober 01, 2015

问题描述:

使用JavaScript生成一个倒数7天的数组。

比如今天是10月1号,生成的数组是["9月25号","9月26号","9月27号","9月28号","9月29号","9月30号","10月1号"]。

这个难点就是需要判断这个月份(可能还需要上一个月份)是30天还是31天,而且还有瑞年的2月28天或者29天。

解答思路:

不需要那么复杂,在js中非常简单,因为js的date对象是可以参与数学运算的!!!看下面的代码:

var now = new Date('2012/3/2 12:00:00'); // 这个算法能自动处理闰年和非闰年。2012年是闰年,所以2月有29号
var s = '';
var i = 0;
while (i < 7) {
 
 s += now.getFullYear() + '/' + (now.getMonth() + 1) + '/' + now.getDate() + '\n';
 now = new Date(now - 24 * 60 * 60 * 1000); // 这个是关键!!!减去一天的毫秒数效果就是把日期往前推一天
 i++;
}
console.log(s);

结果如图:

详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)

如果需求不是指定某一天的时间,而是根据系统当前的时间,来计算也是可以的。

根据当前系统时间,来计算这个倒数7天的数组:

var now = new Date(); // 这个算法能自动处理闰年和非闰年。2012年是闰年,所以2月有29号
var s = '';
var i = 0;
while (i < 7) {
   
    s += now.getFullYear() + '/' + (now.getMonth() + 1) + '/' + now.getDate() + '\n';
    now = new Date(now - 24 * 60 * 60 * 1000); // 这个是关键!!!减去一天的毫秒数效果就是把日期往前推一天
    i++;
}
console.log(s);

结果如图所示:

详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)

以上就是本文的全部内容,希望对大家学习js date对象操作有所帮助。下篇文章给大家介绍有关js的日期格式化问题,详细了解请点击javascript Date format。

Javascript 相关文章推荐
符合标准的js表单提交的代码
Sep 13 Javascript
判断多个元素(RADIO,CHECKBOX等)是否被选择的原理说明
Feb 18 Javascript
详细解密jsonp跨域请求
Apr 15 Javascript
Bootstrap的fileinput插件实现多文件上传的方法
Sep 05 Javascript
jquery实现自定义图片裁剪功能【推荐】
Mar 08 Javascript
jQuery选择器之属性筛选选择器用法详解
Sep 19 jQuery
mui框架移动开发初体验详解
Oct 11 Javascript
vue+vue-validator 表单验证功能的实现代码
Nov 13 Javascript
浅谈Vue数据绑定的原理
Jan 08 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
Mar 06 Javascript
使用jquery-easyui的布局layout写后台管理页面的代码详解
Jun 19 jQuery
layui checkbox默认选中,获取选中值,清空所有选中项的例子
Sep 02 Javascript
RequireJS入门一之实现第一个例子
Sep 30 #Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
Sep 30 #Javascript
jquery插件pagination实现无刷新ajax分页
Sep 30 #Javascript
浅谈Javascript中substr和substring的区别
Sep 30 #Javascript
jQuery复制表单元素附源码分享效果演示
Sep 30 #Javascript
js实现创建删除html元素小结
Sep 30 #Javascript
node.js下LDAP查询实例分享
Sep 30 #Javascript
You might like
最小化数据传输――在客户端存储数据
2006/10/09 PHP
其他功能
2006/10/09 PHP
PHP判断图片格式的七种方法小结
2013/06/03 PHP
ThinkPHP快速入门实例教程之数据分页
2014/07/01 PHP
PHP不使用递归的无限级分类简单实例
2016/11/05 PHP
浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法
2019/10/12 PHP
Laravel5.1 框架路由基础详解
2020/01/04 PHP
extjs两个tbar问题探讨
2013/08/08 Javascript
jQuery循环滚动新闻列表示例代码
2014/06/17 Javascript
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
javascript 对象数组根据对象object key的值排序
2015/03/09 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
Javascript函数式编程语言
2015/10/11 Javascript
JS实现不使用图片仿Windows右键菜单效果代码
2015/10/22 Javascript
JavaScript中的this到底是什么(一)
2015/12/09 Javascript
AngularJS使用ngOption实现下拉列表的实例代码
2016/01/23 Javascript
详解vue-cli开发环境跨域问题解决方案
2017/06/06 Javascript
Angular ng-animate和ng-cookies用法详解
2018/04/18 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
微信小程序实现购物页面左右联动
2019/02/15 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
2019/02/27 jQuery
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
JavaScript手写数组的常用函数总结
2020/11/22 Javascript
使用Python发送各种形式的邮件的方法汇总
2015/11/09 Python
Python实现抢购IPhone手机
2018/02/07 Python
python导入坐标点的具体操作
2019/05/10 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
请编写一个 C 函数,该函数在给定的内存区域搜索给定的字符,并返回该字符所在位置索引值
2014/09/15 面试题
加工操作管理制度
2014/01/19 职场文书
师范生自我鉴定
2014/03/20 职场文书
党员教师群众路线对照检查材料思想汇报
2014/09/29 职场文书
领导干部作风整顿个人剖析材料
2014/10/11 职场文书
大学生党性分析材料
2014/12/19 职场文书
nginx实现发布静态资源的方法
2021/03/31 Servers
js 数组 fill() 填充方法
2021/11/02 Javascript