详解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 相关文章推荐
单独使用CKFinder选择图片的方法
Aug 21 Javascript
Js从头学起(基本数据类型和引用类型的参数传递详细分析)
Feb 16 Javascript
IE8下String的Trim()方法失效的解决方法
Nov 08 Javascript
javascript实现简单的省市区三级联动
May 14 Javascript
jquery插件NProgress.js制作网页加载进度条
Jun 05 Javascript
jQuery模仿京东/天猫商品左侧分类导航菜单效果
Jun 29 Javascript
jQuery为动态生成的select元素添加事件的方法
Aug 29 Javascript
react-native-tab-navigator组件的基本使用示例代码
Sep 07 Javascript
详解easyui 切换主题皮肤
Apr 04 Javascript
微信小程序云开发如何使用云函数生成二维码
May 18 Javascript
VUE项目初建和常见问题总结
Sep 12 Javascript
Vue中computed和watch有哪些区别
Dec 19 Vue.js
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
php date与gmdate的获取日期的区别
2010/02/08 PHP
php调用mysql数据 dbclass类
2011/05/07 PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
2017/04/04 PHP
jqgrid 简单学习笔记
2011/05/03 Javascript
javascript不可用的问题探究
2013/10/01 Javascript
Jquery each方法跳出循环,并获取返回值(实例讲解)
2013/12/12 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
2016/04/12 Javascript
浅谈js数组和splice的用法
2016/12/04 Javascript
利用JQuery实现datatables插件的增加和删除行功能
2017/01/06 Javascript
JS区分Object与Aarry的六种方法总结
2017/02/27 Javascript
通俗解释JavaScript正则表达式快速记忆
2017/08/23 Javascript
详解在vue-cli中引用jQuery、bootstrap以及使用sass、less编写css
2017/11/08 jQuery
Angular Renderer (渲染器)的具体使用
2018/05/03 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
jquery获取select选中值的文本,并赋值给另一个输入框的方法
2018/08/21 jQuery
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
这15个Vue指令,让你的项目开发爽到爆
2019/10/11 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
2019/11/01 Javascript
24行JavaScript代码实现Redux的方法实例
2019/11/17 Javascript
微信小程序获取当前时间及星期几的实例代码
2020/09/20 Javascript
[02:38]DOTA2亚洲邀请赛 IG战队巡礼
2015/02/03 DOTA
[44:41]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python松散正则表达式用法分析
2016/04/29 Python
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
Python中常见的数制转换有哪些
2020/05/27 Python
python 实现一个图形界面的汇率计算器
2020/11/09 Python
HTML5使用Audio标签实现歌词同步的效果
2016/03/17 HTML / CSS
2013年研究生毕业感言
2014/02/06 职场文书
《太阳》教学反思
2014/02/21 职场文书
留学生求职信
2014/06/03 职场文书
119消防日活动总结
2014/08/29 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
销售辞职信范文
2015/03/02 职场文书
深入理解Vue的数据响应式
2021/05/15 Vue.js