moment的一些常見用法總結大全
更新時間:2023年09月30日 09:44:47 作者:是張魚小丸子鴨
這篇文章主要給大家總結介紹了關于moment的一些常見用法,moment.js是一個輕量級的JavaScript時間庫,對于日常開發(fā)中可能會存在獲取時間、設置時間、格式化時間、比較時間等,需要的朋友可以參考下
前言
在我們前端開發(fā)中,我們會涉及到許多對時間日期的一些處理,本文就是對moment常見用法的總結
指定語言
不然可能會引起不必要的bug
moment.locale('zh-cn')
下載:
npm install moment --save 或 yarn add moment
引入使用
import moment from 'moment'
使用
獲取時間戳
# 精確到毫秒 moment().valueOf() ## 1584182611042 ;返回值為數值類型 moment().format('x') ## 返回值為字符串類型 # 精確到秒 moment().unix() ## 1584182618 精確到秒 返回值為數值類型 moment().format('X') ## 返回值為字符串類型
生成指定時間的moment
moment("2000-9-28") #帶格式 moment("2000-9-28","MM-DD-YYYY")
獲取對象
moment().toObject(); # 返回一個包括:年、月、日、時、分、秒、毫秒的對象 # { years: 2020 months: 2 date: 14 hours: 18 minutes: 47 seconds: 56 milliseconds: 526 }
格式化
moment().format(); # 2020-03-14T19:14:05+08:00 #默認返回的是上面的格式,我們也可以進行指定格式 moment().format('YYYY-MM-DD HH:mm:ss'); # 2020-03-14 19:23:29
獲取時間
#獲取今天的時分秒 moment().startOf('day') #獲取本周的第一天(周日)時分秒 moment().startOf('week') #獲取本周周幾的時分秒 moment().startOf('星期幾') #獲取當月第一天的時分秒 moment().startOf('month') # 獲取指定日期的0時0分0秒 moment('2019-10-20').startOf('day') # 獲取今天23時59分59秒 moment().endOf('day') # 獲取本周最后一天(周六)23時59分59秒 moment().endOf('week') # 獲取本周周日23時59分59秒 moment().endOf('isoWeek') # 獲取當前月最后一天23時59分59秒 moment().endOf('month')
獲取當月的第一天時星期幾
# 用于設置星期幾,其中星期日為 0、星期六為 6 moment().startOf('month').day()
獲取前n天/后n天
moment().add(7, 'days'); moment().subtract(7, 'days')
獲取兩個日期的時間差
moment([2008, 2, 27]).diff([2007, 0, 28], 'day'); # 424
比較兩個時間的大小
moment('2010-10-31').isBefore('2010-12-31', 'day'); # true
第二個參數用于確定精度,且不僅僅是要檢查的單個值,因此使用 day 將會檢查年份、月份、日期
需要注意的是:isBefore與isAfter都是開區(qū)間,如果想要使用閉區(qū)間,應該使用isSameOrBefore
isSameOrAfter
判斷一個年份是否是閏年
#不寫年份的話,默認判斷的是今年 moment().isLeapYear(); # false moment([2001]).isLeapYear() # false
獲取月份和星期
moment.months() # ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"] moment.monthsShort() # ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] moment.weekdays() # ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] moment.weekdaysMin() # ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"]
基礎操作
moment().hour() // 小時 moment().date() // 一個月里的第幾天 moment().day() // 星期幾 moment().dayOfYear() // 一年里的第幾天 moment().week() // 一年里的第幾周 moment().month() // 第幾個月 moment().quarter() // 一年里的第幾個季度 moment().year() // 年 moment().daysInMonth() // 當前月有多少天 //操作 moment().add(7, 'days') // 之后的第7天。第2個參數還可以是 'months', 'years' 等。注意是復數。 moment().add(7, 'd')// 與上面一行代碼的運行結果一樣。 moment().subtract(1, 'months') // 上個月 // 還支持 'year','month' 等 moment().endOf('week') // 早于 moment('2010-10-20').isBefore('2010-10-21') // true moment('2010-10-20').isBefore('2010-12-31', 'year') // false // 是否相等 moment('2010-10-20').isSame('2010-10-20') // true moment('2010-10-20').isSame('2009-12-31', 'year') // false // 晚于 moment('2010-10-20').isAfter('2010-10-19') // true moment('2010-10-20').isAfter('2010-01-01', 'year') // false // 是否在時間范圍內 moment('2010-10-20').isBetween('2010-10-19', '2010-10-25') // true moment('2010-10-20').isBetween('2010-01-01', '2012-01-01', 'year') // false moment().isLeapYear()
總結
到此這篇關于moment的一些常見用法的文章就介紹到這了,更多相關moment常見用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
JavaScript TypeScript實現貪吃蛇游戲完整詳細流程
這篇文章主要介紹了JavaScript TypeScript實現貪吃蛇游戲流程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2022-09-09JavaScript使用ActiveXObject訪問Access和SQL Server數據庫
這篇文章主要介紹了JavaScript使用ActiveXObject訪問Access和SQL Server數據庫,本文分別給出相應操作代碼,需要的朋友可以參考下2015-04-04