Date() 按条件打印当前日期的月份和周

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

分析:

  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>

原文地址:https://www.cnblogs.com/dopocheng/p/12207419.html

时间: 2024-10-07 22:00:13

Date() 按条件打印当前日期的月份和周的相关文章

java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月

import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import org.junit.Test; public class TestDateUtil { //1.获取当月第一天 @Test public void testForDate(){ //规定返回日期格式 SimpleDateFormat sf=ne

获取月份的周时间段

包括C#方法和SQL方法. C# using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("输入日期,并回车(0退出):"); string d1 = Console.Rea

date +%s 能打印出自1970-01-01 00:00:00到当前时间的秒数

[[email protected] Desktop]# date +%s 1466561580 [[email protected] Desktop]# python Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56) [GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2 Type "help", "copyright", "credits" or &q

用switch语句判断月份,打印出当前月份所在的季节

var today=new Date(); var abc=today.getMonth(); switch (abc) { case 0: document.write("现在是春季"); break; case 1: document.write("现在是春季"); break; case 2: document.write("现在是春季"); break; case 3: document.write("现在是夏季");

Java根据当前日期获得这一周的日期

/** * 根据日期获得所在周的日期 * @param mdate * @return */ @SuppressWarnings("deprecation") public static List<Date> dateToWeek(Date mdate) { int b = mdate.getDay(); Date fdate; List<Date> list = newArrayList<Date>(); Long fTime = mdate.ge

Java -- 根据当前日期获取当前一周的所有日期

Learn From:http://my.oschina.net/hermer/blog/151274 /** * 测试 * @param args */ public static void main(String[] args) { // 定义输出日期格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd EEE"); Date currentDate = new Date(); // 比如今天是2012-12-25 L

8月份第一周工作总结

8月1号 做IFE的删除工作,各种看不懂,跟AngularJS杠了一天. 8月2号 办社保,照片死活不合格.又要求像素,又要求不超过20kb,用FSCapture搞定的. chrome快捷键:查看网页源代码:ctrl+u 打开新窗口:ctrl+n 主站三大块:qiyiV2.lib.pingback VV:video view 视频播放量,反应用户对视频内容的接受程度,用户粘性的直接体现. 8月3号 填写试用期目标 浩然组内技术分享,qiyiV2架构,不明觉厉.一头雾水. 找调问卷入口,懵逼,最受

js获取几个月前,几周前时间。

/** *  DK 命名空间  防止全局变量污染 */ var DK = {} ; /** * 获取前几个月,默认为一个月,当前时间 * @author duke * @date 格式为yyyy-mm-dd的日期,如:2014-01-25 */ DK.getPreMonth = function() { var obj = DK.init(arguments); var arr = obj.date.split('-'); var year = parseInt(arr[0]); //获取当前日

LODOP打印用JS获取的当前日期

该文详细一步步解释JS获取当前时间的方法,新手小白也看到懂,最后是实际的获取当前年月份的方法.JS中的Date()对象,包含很多当前系统时间的方法,首先建立一个Date()对象,这里取名为date,然后用console.dir(对象名)在控制台输出该对象的全部属性.代码: function ConsoleDateProperty() {//控制台输出属性 var date = new Date(); console.dir(date); } 图示: 如图,可看出Date对象里有很多属性,可以利用