如何使用JavaScript獲取當前月份的第一天和最後一天?


在本教程中,我們將學習如何使用JavaScript獲取當前月份的第一天和最後一天。

在日常生活中,我們經常處理日期,通常知道我們所在的日期——或者至少知道月份。為了幫助使用者確定某事發生或將要發生的時間與他們的當前情況相關,我們會顯示一天或一個月的名稱。這作為一個很好的時間順序。

以下是使用JavaScript獲取月份第一天和最後一天的方法:

  • 使用Date物件

  • 使用Moment.js

使用Date物件

在這種方法中,我們可以使用不同的方法來找出月份的第一天和最後一天。

getDate() 方法用於指定日期,返回月份中的某一天(從1到31)。此方法返回月份的天數,用1到31之間的數字表示。

然後我們使用getFullYear() 方法返回指定日期的年份(對於1000到9999之間的年份,為四位數)。它返回一個數字,對應於指定日期的年份。

getMonth() 方法基於本地時間,返回指定日期的月份(從0到11)。它返回一個數字,範圍從0到11,表示月份。

語法

以下是獲取當前月份第一天和最後一天的語法:

var date = new Date();
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);

在這裡,建立一個物件date,它將呼叫程式碼中指定的方法。我們再次建立一個新的日期物件firstDay來獲取當前月份的第一天。為此,我們將第三個引數設定為1。選擇1作為日期表示我們得到的是月份的第一天。

同樣,我們建立日期物件lastDay來獲取當前月份的最後一天。選擇0作為日期表示我們得到的是月份的最後一天。當我們將1新增到getMonth()方法的返回值時,我們將向前移動一個月。然後,透過指定0作為日期,我們向後移動一天,到當月的最後一天。

示例

在這個例子中,我們可以看到一個日期物件正在被建立。日期物件呼叫方法getFullYear()getMonth()來找出當前月份的第一天。

<html> <body> <h2>Get first and last date using <i>Date Object</i></h2> <p id ="date1"></p> <p id ="date2"></p> <script> var date = new Date(); var firstDay = new Date(date.getFullYear(), date.getMonth(), 1); var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0); document.getElementById("date1").innerHTML = "First day = " + firstDay; document.getElementById("date2").innerHTML = "Last day = " + lastDay; </script> </body> </html>

使用Moment.js庫

Moment.js是一個JavaScript包。這使得解析、操作、驗證和顯示JavaScript中的日期和時間變得非常簡單。Moment.js將在本章中介紹,隨後將對它的功能進行深入討論。Moment JS 能夠以翻譯和易於閱讀的方式呈現日期。Moment.js 採用指令碼化方法,允許你在瀏覽器中使用它。

語法

以下是Moment.js日期格式的語法:

const moment = require('moment');
const date = new Date('2022/01/01');
moment(date).format('MMMM d, YYYY'); // January 1, 2022

moment庫包含在指令碼中,並建立了一個日期物件。呼叫日期物件並根據給定的格式進行格式化。

示例

在這個例子中,我們可以看到moment.js庫是如何包含在指令碼中的。firstdate變數呼叫moment庫並返回指定格式DD-MM-YYYY的月份第一天。類似地,lastdate變數將返回特定格式的月份最後一天。

<html> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.26.0/moment.min.js"> </script> <script src="https://cdnjs.cloudflare.com/ajax/libs/momenttimezone/0.5.31/moment-timezone-with-data-2012-2022.min.js"></script> </head> <body> <h2>Get first and last date using <i>Moment JS</i></h2> <p id ="date1"></p> <p id ="date2"></p> <script> const firstdate = moment().startOf('month').format('DD-MM-YYYY'); const lastdate=moment().endOf('month').format("DD-MM-YYYY"); document.getElementById("date1").innerHTML = "First day = " + firstdate; document.getElementById("date2").innerHTML = "Last day = " + lastdate; </script> </body> </html>

在本教程中,我們學習瞭如何使用JavaScript查詢月份的第一天和最後一天。第一種方法討論了使用帶getDate()getMonth()getFullYear()方法的日期物件的可能性。第二種方法探討了使用名為MomentJS的外部庫的想法,該庫有助於格式化日期並找到本教程的目標。

更新於:2023年9月13日

32K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.