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的复制网页内容到WORD的实现代码
Feb 16 Javascript
jQuery AjaxQueue改进步骤
Oct 06 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
Nov 20 Javascript
页面只能打开一次Cooike如何实现
Dec 04 Javascript
jquery根据name属性查找的小例子
Nov 21 Javascript
jQuery针对各类元素操作基础教程
Aug 29 Javascript
一个简单的动态加载js和css的jquery代码
Sep 01 Javascript
express的中间件cookieParser详解
Dec 04 Javascript
node.js+express制作网页计算器
Jan 17 Javascript
跨域请求的完美解决方法(JSONP, CORS)
Jun 12 Javascript
JS添加或修改控件的样式(Class)实现方法
Oct 15 Javascript
AngularJS实现tab选项卡的方法详解
Jul 05 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终止脚本运行三种实现方法详解
2020/09/01 PHP
JavaScript 语言的递归编程
2010/05/18 Javascript
jquery中ajax学习笔记3
2011/10/16 Javascript
nodejs的require模块(文件模块/核心模块)及路径介绍
2013/01/14 NodeJs
7款风格新颖的jQuery/CSS3菜单导航分享
2013/04/23 Javascript
NodeJS制作爬虫全过程
2014/12/22 NodeJs
javascript中几个容易混淆的概念总结
2015/04/14 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
2015/11/30 Javascript
浅析script标签中的defer与async属性
2016/11/30 Javascript
详解JS: reduce方法实现 webpack多文件入口
2017/02/14 Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
2018/01/10 Javascript
在移动端使用vue-router和keep-alive的方法示例
2018/12/02 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
了解javascript中let和var及const关键字的区别
2019/05/24 Javascript
谈谈JavaScript令人迷惑的==与+
2020/08/31 Javascript
[42:32]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第二场 10.28
2020/10/28 DOTA
[22:07]DOTA2-DPC中国联赛 正赛 iG vs Magma 选手采访
2021/03/11 DOTA
Python中操作MySQL入门实例
2015/02/08 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
python使用rpc框架gRPC的方法
2018/08/24 Python
Python中的集合介绍
2019/01/28 Python
python 机器学习之支持向量机非线性回归SVR模型
2019/06/26 Python
Python多继承以及MRO顺序的使用
2019/11/11 Python
一文轻松掌握python语言命名规范规则
2020/06/18 Python
HTML5 实现图片上传预处理功能
2020/02/06 HTML / CSS
俄罗斯香水在线商店:AromaCode
2019/12/04 全球购物
化学教师自荐信范文
2013/12/28 职场文书
2014大学生党员评议个人总结
2014/09/22 职场文书
房产协议书范本
2014/10/18 职场文书
2015年上半年信访工作总结
2015/03/30 职场文书
2015年乡镇人大工作总结
2015/04/22 职场文书
浅析InnoDB索引结构
2021/04/05 MySQL
Tomcat用户管理的优化配置详解
2022/03/31 Servers
Java 常见的限流算法详细分析并实现
2022/04/07 Java/Android
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript
httpclient调用远程接口的方法
2022/08/14 Java/Android