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 相关文章推荐
js 居中漂浮广告
Mar 21 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
Mar 28 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
Sep 29 Javascript
jQuery之$(document).ready()使用介绍
Apr 05 Javascript
JavaScript加强之自定义event事件
Sep 21 Javascript
基于JavaScript代码实现pc与手机之间的跳转
Dec 23 Javascript
javascript中的面向对象
Mar 30 Javascript
JavaScript实现跟随滚动缓冲运动广告框
Jul 15 Javascript
基于jQuery使用Ajax动态执行模糊查询功能
Jul 05 jQuery
JS使用new操作符创建对象的方法分析
May 30 Javascript
基于javascript原生判断DOM是否加载完毕
Oct 14 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
Nov 11 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框架的性能
2008/01/10 PHP
php数组去重实例及分析
2013/11/26 PHP
apache和PHP如何整合在一起
2015/10/12 PHP
CodeIgniter集成smarty的方法详解
2016/05/26 PHP
超强多功能php绿色集成环境详解
2017/01/25 PHP
php基于dom实现的图书xml格式数据示例
2017/02/03 PHP
浅析PHP开发规范
2018/02/05 PHP
PHP实现微信申请退款功能
2018/10/01 PHP
express的中间件cookieParser详解
2014/12/04 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
jquery实现点击查看更多内容控制段落文字展开折叠效果
2015/08/06 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
基于JS代码实现图片在页面中旋转效果
2016/06/16 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
2016/12/01 Javascript
javascript基于原型链的继承及call和apply函数用法分析
2016/12/15 Javascript
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
node的process以及child_process模块学习笔记
2018/03/06 Javascript
解决vue单页使用keep-alive页面返回不刷新的问题
2018/03/13 Javascript
在 Vue 项目中引入 tinymce 富文本编辑器的完整代码
2018/05/04 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
2019/07/19 Javascript
[54:17]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第二场 1月10日
2021/03/11 DOTA
Python def函数的定义、使用及参数传递实现代码
2014/08/10 Python
Python实现的建造者模式示例
2018/08/06 Python
pyqt5 键盘监听按下enter 就登陆的实例
2019/06/25 Python
python tkinter图形界面代码统计工具(更新)
2019/09/18 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)
2014/04/10 HTML / CSS
巴黎一票通:The Paris Pass
2018/02/10 全球购物
小学教师师德师风自我评价
2015/03/04 职场文书
催款律师函范文
2015/05/27 职场文书
运动会广播稿300字
2015/08/19 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
canvas绘制折线路径动画实现
2021/05/12 Javascript
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL