JS獲取當月第一天和最後一天詳細闡述

JS獲取當前月份的第一天和最後一天是前端開發中比較常見的操作,尤其在需要顯示某個月份內的數據時,獲取當月第一天和最後一天是必不可少的。本文將從多個方面對這個問題做詳細闡述。

一、獲取當前月份的第一天

獲取當前月份的第一天有多種方式,下面我們將分別介紹。

1.使用Date對象

Date對象是JS內置的一個日期對象,它提供了獲取年、月、日等信息的方法。獲取當月第一天的方法如下:


function getFirstDayOfMonth(){
    var date = new Date();
    var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
    return firstDay;
}

以上代碼中,首先使用new Date()獲取當前日期信息,然後使用Date對象的getMonth()方法獲取當前月份。接著使用new Date(year, month, day)的構造函數創建一個新的日期對象,參數中的year和day分別表示年份和月份,day使用1表示當前月份的第一天。最後返回創建的日期對象即可。

2.使用moment庫

moment是一個JS日期庫,它提供了許多便捷的日期操作方法。獲取當月第一天的方法如下:


function getFirstDayOfMonth(){
    var moment = require('moment');
    var firstDay = moment().startOf('month');
    return firstDay;
}

以上代碼中,首先使用require導入moment庫。然後使用moment()獲取當前日期信息,調用startOf(‘month’)方法獲取當月第一天的日期對象。最後返回日期對象即可。

3.使用day.js庫

day.js是一個輕量級的日期庫,它提供了許多便捷的日期操作方法。獲取當月第一天的方法如下:


function getFirstDayOfMonth(){
    var dayjs = require('dayjs');
    var firstDay = dayjs().startOf('month');
    return firstDay;
}

以上代碼中,首先使用require導入dayjs庫。然後使用dayjs()獲取當前日期信息,調用startOf(‘month’)方法獲取當月第一天的日期對象。最後返回日期對象即可。

二、獲取當前月份的最後一天

獲取當前月份的最後一天也有多種方式,下面我們將分別介紹。

1.使用Date對象

獲取當前月份的最後一天需要先獲取下個月的第一天,再向前推一天即可。具體方法如下:


function getLastDayOfMonth(){
    var date = new Date();
    var nextMonth = new Date(date.getFullYear(), date.getMonth()+1, 1);
    var lastDay = new Date(nextMonth.getTime()-1000*60*60*24);
    return lastDay;
}

以上代碼中,首先使用new Date()獲取當前日期信息,然後使用new Date(year, month, day)的構造函數創建一個新的日期對象,參數中的year和day分別表示年份和下一個月份,day使用1表示下一個月份的第一天。接著使用getTime()方法獲取這個日期對象的時間戳,減去一天的毫秒數即可獲取當前月份的最後一天的時間戳。最後使用new Date(timestamp)構造函數創建一個新的日期對象,返回即可。

2.使用moment庫

獲取當前月份的最後一天需要先獲取下個月的第一天,再向前推一天即可。具體方法如下:


function getLastDayOfMonth(){
    var moment = require('moment');
    var lastDay = moment().endOf('month');
    return lastDay;
}

以上代碼中,首先使用require導入moment庫。然後使用moment()獲取當前日期信息,調用endOf(‘month’)方法獲取當月最後一天的日期對象。最後返回日期對象即可。

3.使用day.js庫

獲取當前月份的最後一天需要先獲取下個月的第一天,再向前推一天即可。具體方法如下:


function getLastDayOfMonth(){
    var dayjs = require('dayjs');
    var lastDay = dayjs().endOf('month');
    return lastDay;
}

以上代碼中,首先使用require導入dayjs庫。然後使用dayjs()獲取當前日期信息,調用endOf(‘month’)方法獲取當月最後一天的日期對象。最後返回日期對象即可。

三、小結

本文對JS獲取當前月份的第一天和最後一天的問題進行了詳細的闡述,介紹了多種獲取方法。希望本文對讀者有所幫助。

原創文章,作者:DHRNK,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/332430.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
DHRNK的頭像DHRNK
上一篇 2025-01-24 18:46
下一篇 2025-01-24 18:46

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿著SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿著SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27
  • 如何反混淆美團slider.js

    本文將從多個方面詳細闡述如何反混淆美團slider.js。在開始之前,需要明確的是,混淆是一種保護JavaScript代碼的方法,其目的是使代碼難以理解和修改。因此,在進行反混淆操…

    編程 2025-04-27
  • Python要學JS嗎?

    Python和JavaScript都是非常受歡迎的編程語言。然而,你可能會問,既然我已經學了Python,是不是也需要學一下JS呢?在本文中,我們將圍繞這個問題進行討論,並從多個角…

    編程 2025-04-27
  • 解決js ajax post 419問題

    對於使用ajax post請求時出現的419問題,我們需要進行以下幾個方面的闡述,包括返回碼的含義、可能出現的情況、解決方案等內容。 一、解析419返回碼 419返回碼錶示用戶超時…

    編程 2025-04-27
  • index.html怎麼打開 – 詳細解析

    一、index.html怎麼打開看 1、如果你已經擁有了index.html文件,那麼你可以直接使用任何一個現代瀏覽器打開index.html文件,比如Google Chrome、…

    編程 2025-04-25

發表回復

登錄後才能評論