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 相关文章推荐
jquery 页面全选框实践代码
Apr 02 Javascript
腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口
Jul 26 Javascript
js变换显示图片的实例
Apr 16 Javascript
jquery的trigger和triggerHandler的区别示例介绍
Apr 20 Javascript
javascript中clipboardData对象用法详解
May 13 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
Dec 22 Javascript
vue通过路由实现页面刷新的方法
Jan 25 Javascript
Angular HMR(热模块替换)功能实现方法
Apr 04 Javascript
使用webpack4编译并压缩ES6代码的方法示例
Apr 24 Javascript
微信小程序搭建自己的Https服务器
May 02 Javascript
Vue中keep-alive的两种应用方式
Jul 15 Javascript
Javascript文本框脚本实现方法解析
Oct 30 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
PHP学习记录之数组函数
2018/06/01 PHP
使用闭包对setTimeout进行简单封装避免出错
2013/07/10 Javascript
JS字符串处理实例代码
2013/08/05 Javascript
jquery的trigger和triggerHandler的区别示例介绍
2014/04/20 Javascript
让alert不出现弹窗的两种方法
2014/05/18 Javascript
使用js画图之画切线
2015/01/12 Javascript
jQuery提示插件alertify使用指南
2015/04/21 Javascript
JavaScript中判断数据类型的方法总结
2016/05/24 Javascript
JavaScript必知必会(七)js对象继承
2016/06/08 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
BootStrap按钮标签及基本样式
2016/11/23 Javascript
浅谈jquery页面初始化的4种方式
2016/11/27 Javascript
JavaScript中Array对象用法实例总结
2016/11/29 Javascript
基于jQuery实现选项卡效果
2017/01/04 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
ThinkPHP+jquery实现“加载更多”功能代码
2017/03/11 Javascript
用JS编写一个函数,返回数组中重复出现过的元素(实例)
2017/09/14 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
[01:02:06]LGD vs Mineski Supermajor 胜者组 BO3 第二场 6.5
2018/06/06 DOTA
python mysqldb连接数据库
2009/03/16 Python
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
浅谈django orm 优化
2018/08/18 Python
基于python 取余问题(%)详解
2020/06/03 Python
完美解决keras保存好的model不能成功加载问题
2020/06/11 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
5 个强大的HTML5 API 函数推荐
2014/11/19 HTML / CSS
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
Champion澳大利亚官网:美国冠军运动服装
2018/05/07 全球购物
安全教育演讲稿
2014/05/09 职场文书
授权委托书
2014/09/17 职场文书
加强作风建设工作总结
2014/10/23 职场文书
中学生检讨书1000字
2014/10/28 职场文书
win10+anaconda安装yolov5的方法及问题解决方案
2021/04/29 Python
Spring Cache和EhCache实现缓存管理方式
2021/06/15 Java/Android
Python上下文管理器Content Manager
2021/06/26 Python