条件:打印 月份-第几周 若本月前七天不在全在第一周则这一周计入到上月第五周。

分析:
  1.条件判断分别处理前七天和大于等于七天的数据;
  2.当前月的7号是关键,如果在周天就不需要放到上月,如果不在周天就要条件判断。
  3.日期函数理解
时间函数:
  创建 Date 对象的语法:var myDate=new Date()
  Date()-返回当日的日期和时间
  getDate()-从Date对象返回一个月中的某一天(1-31)
  getDay()-从Date对象返回一个周内的某一天(0-6对应周天到周六)
  getMonth()-从Date对象月份(0-11)
  getFullYear()/getYear()-从Date对象以四位数字返回年份
  parse()-返回1970年1月1日午夜到指定日期(字符串)的毫秒数(时间戳)。
  setDate()-设置Date对象月中的某一天
<!-- 第几月的第几周 打印结果: 月份-第几周 若本月前七天不在全在第一周则这一周计入到上月第五周,余下的周要减一-->
<template>
<div>
<p>week of month!</p>
</div>
</template> <script>
export default {
created() {
this.getWeek("Sun Aug 31 2019 18:05:38 GMT+0800 (中国标准时间)")
}, methods: {
getWeek(dateStr) {
// Date.parse() 方法解析一个表示某个日期的字符串,并返回从1970-1-1 00:00:00 UTC 到该日期对象(该日期对象的UTC时间)的毫秒数,
dateStr = Date.parse(dateStr);
// 转成 date 对象
let tarDate = new Date(dateStr);
let tarDay = tarDate.getDay() == 0 ? 7 : tarDate.getDay(); // 目标日期是周几 (1-7)
console.log(tarDate.getDate())
// 第几周
let tarWeek = Math.ceil((tarDate.getDate()/7));
console.log("tarWeek", tarWeek)
// getMonth() 返回 (0-11)
let tarMonth = tarDate.getMonth() + 1;
// 不能 let tarDate7 = tarDate tarDate7改变后这个也会变
let tarDate7 = new Date(dateStr);
tarDate7.setDate(7);
let tarDate7Day = tarDate7.getDay(); // 当月 7 号是周几 (0-6)
if (tarDate7Day == 0) {
tarWeek;
} else {
if (tarDate.getDate() > 7) {
console.log("> 7");
tarWeek -= 1;
} else {
console.log("<= 7");
if (tarDate7Day < tarDay) {
tarMonth = tarDate.getMonth();
tarWeek = 5;
} else {
tarWeek -= 1;
}
}
}
console.log(`${tarMonth}-${tarWeek}`);
}
}
}
</script>

最新文章

  1. Reporting Services 错误案例一则
  2. MyEclipse10修改servlet模版
  3. SAM4E单片机之旅——24、使用DSP库求向量数量积
  4. linq 之 Distinct的使用
  5. UITabBarController的使用和坑
  6. DZNEmptyDataSet,优秀的空白页或者出错页封装
  7. nginx模块开发(31)—定时器模型
  8. AltiumDesigner学习笔记(一)——创建工程与原理图文件
  9. Embedded之memory test
  10. 《Linear Algebra and Its Applications》-chaper1-线性方程组-线性相关性
  11. html小知识
  12. 让 SVN (TortoiseSVN)提交时忽略指定目录
  13. Git的使用详解
  14. windows2003NLB群集配置(工作组和域)
  15. bugku web 矛盾
  16. 【原创】IDEA一定要改的八条配置
  17. Java 数据库操作
  18. StackService.Redis 应用
  19. DFS Tempter of the Bone
  20. 阿里云(四)Linux 实例常用内核网络参数介绍与常见问题处理

热门文章

  1. request session
  2. THUWC2020 自闭记
  3. 程序员你为什么这么累【三】:编码习惯之Controller规范
  4. generic
  5. JDK 1.8 完整日期时间Api (文末附示例)
  6. keywords in my life
  7. FFMPEG学习----使用SDL构建音频播放器
  8. edltplus使用正则表达式替换多余空行
  9. HDU_1506_单调栈
  10. WeChall_ Training: Stegano I (Training, Stegano)