JS实现获取当前所在周的周六、周日示例分析


Posted in Javascript onMay 11, 2019

本文实例讲述了JS实现获取当前所在周的周六、周日。分享给大家供大家参考,具体如下:

需求:无论当前是哪一天,获取当天所在周的周末 是哪一天

实现步骤:

比如,今天周一,则周日距离今天还有(7-1)=6天,那么将今天的时间(毫秒数),加上六天后的时间(6*_dayLongTime 毫秒数),然后根据date函数,转换为几月几日。

1、获取当天的时间

let _nowTime=new Date().getTime();

2、获取当天是星期几

let _week=_date.getDay();

3、设置一天的时长

let _dayLongTime=24*60*60*1000;

4、获取周六周日距离现在还有多少毫秒

let _furtureSundayTimes = _nowTime + (7 - _week) * _dayLongTime;
let _furtureSaturdayTimes = _nowTime + (6 - _week) * _dayLongTime;

5、将毫秒数转为date对象

_furtureSundayTimes = new Date(_furtureSundayTimes);
_furtureSaturdayTimes = new Date(_furtureSaturdayTimes);

6、根据日期获取几月几日

// staurday
let _satYear = _furtureSaturdayTimes.getFullYear();
let _satMonth = _furtureSaturdayTimes.getMonth() + 1;
let _satDay = _furtureSaturdayTimes.getDate();
//sunday
let _sunYear = _furtureSundayTimes.getFullYear();
let _sunMonth = _furtureSundayTimes.getMonth() + 1;
let _sunDay = _furtureSundayTimes.getDate();

7、格式化

_satMonth = _satMonth >= 10 ? _satMonth : '0' + _satMonth;
_satDay = _satDay >= 10 ? _satDay : '0' + _satDay;
_sunMonth = _sunMonth >= 10 ? _sunMonth : '0' + _sunMonth;
_sunDay = _sunDay >= 10 ? _sunDay : '0' + _sunDay;
_mealSunDay = _satYear+'-'+_satMonth+'-'+_satDay;
_mealSaturDay = _sunYear+ '-'+_sunMonth+'-'+_sunDay;

8、注:之所以不仅获取周六,然后周日则用周六加1,就行,因为很有可能改周末不在同一个月份,比如3.31周六,4.01周日,月份不相同

9、方法体

function getWeekDay() {
 let _date = new Date();
 let _nowTime = _date.getTime();
 let _week = _date.getDay();
 let _dayLongTime = 24 * 60 * 60 * 1000;
 let _furtureSundayTimes = _nowTime + (7 - _week) * _dayLongTime;
 let _furtureSaturdayTimes = _nowTime + (6 - _week) * _dayLongTime;
 _furtureSundayTimes = new Date(_furtureSundayTimes);
 _furtureSaturdayTimes = new Date(_furtureSaturdayTimes);
 // staurday
 let _satYear = _furtureSaturdayTimes.getFullYear();
 let _satMonth = _furtureSaturdayTimes.getMonth() + 1;
 let _satDay = _furtureSaturdayTimes.getDate();
 //sunday
 let _sunYear = _furtureSundayTimes.getFullYear();
 let _sunMonth = _furtureSundayTimes.getMonth() + 1;
 let _sunDay = _furtureSundayTimes.getDate();
 _satMonth = _satMonth >= 10 ? _satMonth : '0' + _satMonth;
 _satDay = _satDay >= 10 ? _satDay : '0' + _satDay;
 _sunMonth = _sunMonth >= 10 ? _sunMonth : '0' + _sunMonth;
 _sunDay = _sunDay >= 10 ? _sunDay : '0' + _sunDay;
 _mealSunDay = _satYear+'-'+_satMonth+'-'+_satDay;
 _mealSaturDay = _sunYear+ '-'+_sunMonth+'-'+_sunDay;
 let _weekendDay = [{
  saturDay: _mealSunDay
 }, {
  sunDay: _mealSaturDay
 }]
 return _weekendDay;
}
Javascript 相关文章推荐
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
Mar 09 Javascript
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
Jan 12 Javascript
jQuery scroll事件实现监控滚动条分页示例
Apr 04 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
Oct 08 Javascript
javascript html5 canvas实现可拖动省份的中国地图
Mar 11 Javascript
VUE多层路由嵌套实现代码
May 15 Javascript
基于Vue 2.0的模块化前端 UI 组件库小结
Dec 21 Javascript
解决layer弹层遮罩挡住窗体的问题
Aug 17 Javascript
浅谈react-router@4.0 使用方法和源码分析
Jun 04 Javascript
windows下create-react-app 升级至3.3.1版本踩坑记
Feb 17 Javascript
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
通过实例了解Render Props回调地狱解决方案
Nov 04 Javascript
js核心基础之构造函数constructor用法实例分析
May 11 #Javascript
js核心基础之闭包的应用实例分析
May 11 #Javascript
vue下载excel的实现代码后台用post方法
May 10 #Javascript
微信小程序如何再次获取用户授权的方法
May 10 #Javascript
vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)
May 10 #Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
May 10 #Javascript
vue element中axios下载文件(后端Python)
May 10 #Javascript
You might like
jQuery+PHP实现的掷色子抽奖游戏实例
2015/01/04 PHP
为你总结一些php信息函数
2015/10/21 PHP
关于Blog顶部的滚动导航条代码
2006/09/25 Javascript
用js实现上传图片前的预览(TX的面试题)
2007/08/14 Javascript
用JavaScript隐藏控件的方法
2009/09/21 Javascript
JavaScript模块随意拖动示例代码
2014/05/27 Javascript
jQuery+css3动画属性制作猎豹浏览器宽屏banner焦点图
2015/03/16 Javascript
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
jQuery插件实现图片轮播特效
2016/06/16 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
Angular项目从新建、打包到nginx部署全过程记录
2017/12/09 Javascript
jquery ui 实现 tab标签功能示例【测试可用】
2019/07/25 jQuery
Vue+ElementUI table实现表格分页
2019/12/14 Javascript
通过angular CDK实现页面元素拖放的步骤详解
2020/07/01 Javascript
Python version 2.7 required, which was not found in the registry
2014/08/26 Python
Python中的is和==比较两个对象的两种方法
2017/09/06 Python
Python冲顶大会 快来答题!
2018/01/17 Python
安装python时MySQLdb报错的问题描述及解决方法
2018/03/20 Python
Python简单生成随机数的方法示例
2018/03/31 Python
浅析pandas 数据结构中的DataFrame
2019/10/12 Python
pytorch中的自定义反向传播,求导实例
2020/01/06 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
用纯CSS3实现网页中常见的小箭头
2017/10/16 HTML / CSS
你可能不熟练的十个前端HTML5经典面试题
2018/07/03 HTML / CSS
英国工具中心:UK Tool Centre
2017/07/10 全球购物
全球领先的中国制造商品在线批发平台:DHgate
2020/01/28 全球购物
Java程序员综合测试题
2014/04/25 面试题
高中的职业生涯规划书
2013/12/28 职场文书
办公室文员工作自我鉴定
2014/09/19 职场文书
2014年超市员工工作总结
2014/11/18 职场文书
新员工入职欢迎词
2015/01/23 职场文书
2015自愿离婚协议书范本
2015/01/28 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书
导游词之山东八仙过海景区
2019/11/11 职场文书
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python