欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS實現(xiàn)獲取各種格式的時間

 更新時間:2023年08月08日 08:59:29   作者:一花一world  
在?JavaScript?中,可以使用內(nèi)置的?Date?對象來獲取當前時間,并根據(jù)需要格式化成不同的時間格式,下面就跟隨小編一起來看看具體的使用吧

在 JavaScript 中,可以使用內(nèi)置的 Date 對象來獲取當前時間,并根據(jù)需要格式化成不同的時間格式。以下是獲取時間、年月日和各種格式的時間的示例代碼:

// 獲取當前時間
let currentTime = new Date();
// 獲取年份
let year = currentTime.getFullYear();
// 獲取月份(注意月份是從0開始計數(shù)的,所以需要加1)
let month = currentTime.getMonth() + 1;
// 獲取日期
let day = currentTime.getDate();
// 獲取小時
let hours = currentTime.getHours();
// 獲取分鐘
let minutes = currentTime.getMinutes();
// 獲取秒數(shù)
let seconds = currentTime.getSeconds();
// 獲取毫秒數(shù)
let milliseconds = currentTime.getMilliseconds();
// 格式化時間為 YYYY-MM-DD
let formattedDate = `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`;
// 格式化時間為 HH:MM:SS
let formattedTime = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
// 格式化時間為 YYYY-MM-DD HH:MM:SS
let formattedDateTime = `${formattedDate} ${formattedTime}`;
// 格式化時間為 MM/DD/YYYY
let formattedDateUS = `${month.toString().padStart(2, '0')}/${day.toString().padStart(2, '0')}/${year}`;
// 格式化時間為 HH:MM AM/PM
let formattedTime12Hour = `${hours % 12 || 12}:${minutes.toString().padStart(2, '0')} ${hours < 12 ? 'AM' : 'PM'}`;
console.log('當前時間:', currentTime);
console.log('年份:', year);
console.log('月份:', month);
console.log('日期:', day);
console.log('小時:', hours);
console.log('分鐘:', minutes);
console.log('秒數(shù):', seconds);
console.log('毫秒數(shù):', milliseconds);
console.log('格式化日期:', formattedDate);
console.log('格式化時間:', formattedTime);
console.log('格式化日期時間:', formattedDateTime);
console.log('格式化日期(美國格式):', formattedDateUS);
console.log('格式化12小時制時間:', formattedTime12Hour);

這段代碼將獲取當前時間,并使用不同的方法來獲取年份、月份、日期、小時、分鐘、秒數(shù)和毫秒數(shù)。然后,使用不同的格式化方式將時間格式化成不同的格式,包括YYYY-MM-DD、HH:MM:SS、YYYY-MM-DD HH:MM:SS、MM/DD/YYYY和HH:MM AM/PM等格式。你可以根據(jù)需要選擇合適的格式化方式來獲取不同的時間格式。

獲取昨天、明天的日期 、獲取本周、上周、下周的開始結(jié)束日期

在 JavaScript 中,可以使用 Date 對象和一些日期計算方法來獲取昨天、明天的日期,以及本周、上周、下周的開始和結(jié)束日期。以下是示例代碼:

// 獲取昨天的日期
let yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1);
// 獲取明天的日期
let tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
// 獲取本周的開始日期和結(jié)束日期
let today = new Date();
let startOfWeek = new Date(today.setDate(today.getDate() - today.getDay()));
let endOfWeek = new Date(today.setDate(today.getDate() - today.getDay() + 6));
// 獲取上周的開始日期和結(jié)束日期
let startOfLastWeek = new Date(startOfWeek);
startOfLastWeek.setDate(startOfLastWeek.getDate() - 7);
let endOfLastWeek = new Date(endOfWeek);
endOfLastWeek.setDate(endOfLastWeek.getDate() - 7);
// 獲取下周的開始日期和結(jié)束日期
let startOfNextWeek = new Date(startOfWeek);
startOfNextWeek.setDate(startOfNextWeek.getDate() + 7);
let endOfNextWeek = new Date(endOfWeek);
endOfNextWeek.setDate(endOfNextWeek.getDate() + 7);
console.log('昨天的日期:', yesterday);
console.log('明天的日期:', tomorrow);
console.log('本周的開始日期:', startOfWeek);
console.log('本周的結(jié)束日期:', endOfWeek);
console.log('上周的開始日期:', startOfLastWeek);
console.log('上周的結(jié)束日期:', endOfLastWeek);
console.log('下周的開始日期:', startOfNextWeek);
console.log('下周的結(jié)束日期:', endOfNextWeek);

這段代碼使用 Date 對象和一些日期計算方法來獲取昨天和明天的日期。然后,使用一些日期計算方法來獲取本周的開始日期和結(jié)束日期。接下來,通過調(diào)整本周的開始日期和結(jié)束日期,來獲取上周的開始日期和結(jié)束日期,以及下周的開始日期和結(jié)束日期。最后,將獲取到的日期打印輸出。你可以根據(jù)需要使用這些日期來進行進一步的處理和展示。

封裝整體

當你需要頻繁地獲取昨天、明天的日期,以及本周、上周、下周的開始和結(jié)束日期時,可以封裝一個函數(shù)來方便調(diào)用。以下是一個封裝的方案示例:

function getDateRange() {
  let today = new Date();
  let yesterday = new Date();
  yesterday.setDate(yesterday.getDate() - 1);
  let tomorrow = new Date();
  tomorrow.setDate(tomorrow.getDate() + 1);
  let startOfWeek = new Date(today.setDate(today.getDate() - today.getDay()));
  let endOfWeek = new Date(today.setDate(today.getDate() - today.getDay() + 6));
  let startOfLastWeek = new Date(startOfWeek);
  startOfLastWeek.setDate(startOfLastWeek.getDate() - 7);
  let endOfLastWeek = new Date(endOfWeek);
  endOfLastWeek.setDate(endOfLastWeek.getDate() - 7);
  let startOfNextWeek = new Date(startOfWeek);
  startOfNextWeek.setDate(startOfNextWeek.getDate() + 7);
  let endOfNextWeek = new Date(endOfWeek);
  endOfNextWeek.setDate(endOfNextWeek.getDate() + 7);
  return {
    yesterday,
    tomorrow,
    startOfWeek,
    endOfWeek,
    startOfLastWeek,
    endOfLastWeek,
    startOfNextWeek,
    endOfNextWeek,
  };
}
// 調(diào)用函數(shù)獲取日期范圍
let dateRange = getDateRange();
console.log('昨天的日期:', dateRange.yesterday);
console.log('明天的日期:', dateRange.tomorrow);
console.log('本周的開始日期:', dateRange.startOfWeek);
console.log('本周的結(jié)束日期:', dateRange.endOfWeek);
console.log('上周的開始日期:', dateRange.startOfLastWeek);
console.log('上周的結(jié)束日期:', dateRange.endOfLastWeek);
console.log('下周的開始日期:', dateRange.startOfNextWeek);
console.log('下周的結(jié)束日期:', dateRange.endOfNextWeek);

這個封裝的方案定義了一個名為 getDateRange 的函數(shù),該函數(shù)返回一個包含昨天、明天的日期,以及本周、上周、下周的開始和結(jié)束日期的對象。然后,通過調(diào)用 getDateRange 函數(shù)來獲取日期范圍,并將結(jié)果打印輸出。你可以根據(jù)需要將這個方案集成到你的項目中,以方便地獲取日期范圍。

封裝方案的優(yōu)點

代碼復用:封裝方案可以將重復的代碼封裝起來,使得代碼更加簡潔和可維護。

方便調(diào)用:封裝方案可以將復雜的操作封裝成一個函數(shù),方便調(diào)用和使用。

提高可讀性:封裝方案可以給函數(shù)起一個有意義的名字,使得代碼更加易讀和易懂。

封裝方案的缺點

限制性:封裝方案可能無法滿足所有的使用場景,因為它是基于特定需求進行封裝的。

可擴展性:封裝方案可能難以擴展,特別是當需求發(fā)生變化時,可能需要修改封裝方案。

使用場景

封裝日期范圍的方案適用于以下場景:

1.需要頻繁地獲取昨天、明天的日期,以及本周、上周、下周的開始和結(jié)束日期。

2.需要在項目中多處地方使用相同的日期范圍。

3.需要將日期范圍的獲取邏輯封裝成一個可復用的函數(shù)。

總的來說,封裝方案適用于需要復用和簡化代碼的場景,特別是當某個操作需要在多個地方使用時。但是在使用封裝方案時,需要注意其適用性和可擴展性,確保方案能夠滿足當前的需求,并且能夠方便地進行擴展和修改。

到此這篇關(guān)于JS實現(xiàn)獲取各種格式的時間的文章就介紹到這了,更多相關(guān)JS獲取時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 小程序?qū)崿F(xiàn)滑動塊效果

    小程序?qū)崿F(xiàn)滑動塊效果

    這篇文章主要為大家詳細介紹了小程序?qū)崿F(xiàn)滑動塊,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • JavaScript實現(xiàn)的日期控件具體代碼

    JavaScript實現(xiàn)的日期控件具體代碼

    JavaScript實現(xiàn)的日期控件,它還會讀取當前的時間,有需要的朋友可以參考一下
    2013-11-11
  • JS中for循環(huán)的四種寫法示例(入門級)

    JS中for循環(huán)的四種寫法示例(入門級)

    對于for循環(huán)相信大家再常用不過了,下面這篇文章主要給大家介紹了關(guān)于JS中for循環(huán)的四種寫法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04
  • js 數(shù)組詳細操作方法及解析合集

    js 數(shù)組詳細操作方法及解析合集

    在開發(fā)中,數(shù)組的使用場景非常多,平日中也涉及到很多數(shù)組的api/相關(guān)操作,一直也沒有對這塊內(nèi)容進行一塊整理總結(jié),很多時候就算用過幾次這個api,在開發(fā)中也很容易忘記,還是要谷歌一下
    2018-06-06
  • JS采用絕對定位實現(xiàn)回到頂部效果完整實例

    JS采用絕對定位實現(xiàn)回到頂部效果完整實例

    這篇文章主要介紹了JS采用絕對定位實現(xiàn)回到頂部效果,以完整實例形式分析了JS定位到頁面頂部功能的實現(xiàn)方法,涉及javascript動態(tài)操作頁面元素與屬性的相關(guān)技巧,需要的朋友可以參考下
    2016-06-06
  • js 實現(xiàn)復選框只能選擇一項的示例代碼

    js 實現(xiàn)復選框只能選擇一項的示例代碼

    下面小編就為大家分享一篇js 實現(xiàn)復選框只能選擇一項的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 簡單談談javascript代碼復用模式

    簡單談談javascript代碼復用模式

    這篇文章主要簡單談談javascript代碼復用模式,主要詳細介紹了類式繼承模式中的默認模式,希望大家能夠喜歡。
    2015-01-01
  • ES6學習教程之模板字符串詳解

    ES6學習教程之模板字符串詳解

    大家都知道在ES6中引進的一種新型的字符串字面量語法-模板字符串,下面這篇文章主要給大家介紹了關(guān)于ES6學習教程之模板字符串的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-10-10
  • javascript+css實現(xiàn)俄羅斯方塊小游戲

    javascript+css實現(xiàn)俄羅斯方塊小游戲

    這篇文章主要為大家詳細介紹了javascript+css實現(xiàn)俄羅斯方塊小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • 原生JS實現(xiàn)多條件篩選

    原生JS實現(xiàn)多條件篩選

    這篇文章主要為大家詳細介紹了原生JS實現(xiàn)多條件篩選,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08

最新評論