JS获取月的第几周和年的第几周实例代码


Posted in Javascript onDecember 05, 2018

下面一段代码给大家介绍JS获取月的第几周和年的第几周,具体代码如下所述:

var getMonthWeek = function (a, b, c) {
      /*
      a = d = 当前日期
      b = 6 - w = 当前周的还有几天过完(不算今天)
      a + b 的和在除以7 就是当天是当前月份的第几周
      */
      var date = new Date(a, parseInt(b) - 1, c), w = date.getDay(), d = date.getDate();
      return Math.ceil(
        (d + 6 - w) / 7
      );
    };
    var getYearWeek = function (a, b, c) {
      /*
      date1是当前日期
      date2是当年第一天
      d是当前日期是今年第多少天
      用d + 当前年的第一天的周差距的和在除以7就是本年第几周
      */
      var date1 = new Date(a, parseInt(b) - 1, c), date2 = new Date(a, 0, 1),
        d = Math.round((date1.valueOf() - date2.valueOf()) / 86400000);
      return Math.ceil(
        (d + ((date2.getDay() + 1) - 1)) / 7
      );
    };
    //获取时间的代码就不写了
    console.log(getMonthWeek(2019,1,1));//返回1

 补充:js 获取每月有几周,当前时间在当月第几周,今天周几等方法

 因产品需要展示相关时间,现总结如下方法:以供日后参考:

获取每月有几周

// year:年 month:月 day:日
 getWeeks(year, month, day) {
  const d = new Date()
  // 该月第一天
  d.setFullYear(2018, 6, 1)
  let w1 = d.getDay()
  if (w1 === 0) {
   w1 = 7
  }
  // 该月天数
  d.setFullYear(2018, 7, 0)
  const dd = d.getDate()
  // 该月第一个周一
  let d1
  if (w1 !== 1) {
   d1 = 7 - w1 + 2
  } else {
   d1 = 1
  }
  const WEEK_NUB = Math.ceil((dd - d1 + 1) / 7)
  return WEEK_NUB
 }

获得周期名字

getWeekName() {
 const weekday = ['周日', '周一', '周二', '周三', '周四', '周五', '周六']
 const index = new Date().getDay()
 const currDay = weekday[index]
 return currDay
}

获得当前日期在当月第几周

// a: 年 b: 月 c: 日 (不包括跟上个月重合的部分)
  getMonthWeek(a, b, c) {
   const date = new Date(a, parseInt(b) - 1, c)
   const w = date.getDay()
   const d = date.getDate()
   return Math.ceil(
    (d + 6 - w) / 7
   )
  }

总结

以上所述是小编给大家介绍的JS获取月的第几周和年的第几周实例代码 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JQuery中html()方法使用不当带来的陷阱
Apr 07 Javascript
基于jquery的15款幻灯片插件
Apr 10 Javascript
使用 JavaScript 进行函数式编程 (一) 翻译
Oct 02 Javascript
js css+html实现简单的日历
Jul 14 Javascript
无阻塞加载js,防止因js加载不了影响页面显示的问题
Dec 18 Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 Javascript
强大的JavaScript响应式图表Chartist.js的使用
Sep 13 Javascript
vue 粒子特效的示例代码
Sep 19 Javascript
vue 插值 v-once,v-text, v-html详解
Jan 19 Javascript
js自定义trim函数实现删除两端空格功能
Feb 09 Javascript
JS封装的模仿qq右下角消息弹窗功能示例
Aug 22 Javascript
layui写后台表格思路和赋值用法详解
Nov 14 Javascript
JavaScript实现学生在线做题计时器功能
Dec 05 #Javascript
vue-cli3搭建项目的详细步骤
Dec 05 #Javascript
详解vue中async-await的使用误区
Dec 05 #Javascript
Vue中的基础过渡动画及实现原理解析
Dec 04 #Javascript
使用FormData实现上传多个文件
Dec 04 #Javascript
vue自定义指令的创建和使用方法实例分析
Dec 04 #Javascript
用vuex写了一个购物车H5页面的示例代码
Dec 04 #Javascript
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
用PHP连接Oracle for NT 远程数据库
2006/10/09 PHP
php实现文件下载简单示例(代码实现文件下载)
2014/03/10 PHP
JS 字符串连接[性能比较]
2009/05/10 Javascript
JavaScript学习笔记(一) js基本语法
2011/10/25 Javascript
js导航栏单击事件背景变换示例代码
2014/01/13 Javascript
jquery实现的网页自动播放声音
2014/04/30 Javascript
初步使用bootstrap快速创建页面
2016/03/03 Javascript
JavaScript中数组去除重复的三种方法
2016/04/22 Javascript
BootStrap扔进Django里的方法详解
2016/05/13 Javascript
浅析JavaScript中var that=this
2017/02/17 Javascript
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
2017/07/08 jQuery
浅谈sass在vue注意的地方
2017/08/10 Javascript
JavaScript编写的网页小游戏,很给力
2017/08/18 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
2017/09/20 jQuery
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
linux下安装easy_install的方法
2013/02/10 Python
Python中使用装饰器时需要注意的一些问题
2015/05/11 Python
python中关于for循环的碎碎念
2017/06/30 Python
python查询mysql,返回json的实例
2018/03/26 Python
Python根据欧拉角求旋转矩阵的实例
2019/01/28 Python
用python实现刷点击率的示例代码
2019/02/21 Python
python文本数据处理学习笔记详解
2019/06/17 Python
Python3查找列表中重复元素的个数的3种方法详解
2020/02/13 Python
Django中ORM的基本使用教程
2020/12/22 Python
英文版银行求职信
2013/10/09 职场文书
小区门卫工作职责
2013/12/14 职场文书
蔬菜基地的创业计划书
2014/01/06 职场文书
四风自我剖析材料
2014/09/30 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
如何写辞职信
2015/05/13 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL
Python语言中的数据类型-序列
2022/02/24 Python
Python学习之时间包使用教程详解
2022/03/21 Python