zoukankan      html  css  js  c++  java
  • xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

    js 获取是否为闰年,以及各月的天数

    calendar utils

    isLeapYear

    
    
    const isLeapYear = (year) => {
        return (year % 4 === 0) && (year % 100 !== 0 || year % 400 === 0);
    }
    
    const year = new Date().getFullYear()
    
    isLeapYear(year);
    
    

    getMonthDays

    const getMonthDays = (timestamp) => {
      const date = new Date(timestamp);
      const year = date.getFullYear();
      const month = date.getMonth() + 1;
      let days = 0;
      switch (month) {
        case 1:
        case 3:
        case 5:
        case 7:
        case 8:
        case 10:
        case 12:
          days = 31;
          break;
        case 2:
          if(isLeapYear(year)) {
            days = 29;
          } else {
            days = 28;
          }
          break;
        case 4:
        case 6:
        case 9:
        case 11:
          days = 30;
          break;
        default:
          break;
      }
      return days;
    }
    
    
    
    function isLeapYear(year) {
      // 如果year年2月没有29则自动进一变为3月1日
      var date = new Date(year, 1, 29)
      return date.getDate() === 29
    }
    
    isLeapYear(2000) // true
    isLeapYear(2001) // false
    
    
    // 将时间设置为这个月的下一月的第一天,然后回拨一秒
    
    
    function monthDay(year, month) {
      var date = new Date(year, month, 1, 0, 0, 0)
      var yesterDay = new Date(date - 1000)
      return yesterDay.getDate()
    }
    monthDay(2017, 2)  // 28
    monthDay(2017, 12)  // 31
    
    

    isToday

    
    const isToday = (timestamp = ``) => {
      return new Date(timestamp).toLocaleDateString() === new Date().toLocaleDateString();
    }
    
    

    format today

    const autoGetToday = (time = ``, debug = false) => {
        let log = console.log;
        let date = new Date();
        let year = date.getFullYear();
        let month = date.getMonth() + 1;
        let day = date.getDate();
        if (debug) {
            log(year);
            log(month);
            log(day);
        }
        let today = `${year}/${month}/${day} ${time}`;
        if (debug) {
            log(`today =`, today);
        }
        return today;
    };
    
    

    refs

    https://www.cnblogs.com/xgqfrms/p/12661145.html



    ©xgqfrms 2012-2020

    www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


  • 相关阅读:
    Lua 学习之基础篇一<Lua 运算符>
    Git: invalid active developer path
    Lua中使用continue 小练习
    Xcode 运行objc_msgSend 提示objc_msgsend()Too many arguments to function call, expected 0
    逆向思维
    机场
    旅行者
    好图计数
    支配树
    一般图最大匹配
  • 原文地址:https://www.cnblogs.com/xgqfrms/p/12667959.html
Copyright © 2011-2022 走看看