平常開發常常會用Moment.js來處理時間,現對頻繁使用的幾個API作下整理,以便往後查閱。javascript
moment().valueOf() // 獲取時間戳(以毫秒爲單位) moment().startOf('day') // 獲取今天0時0分0秒 moment().startOf('isoWeek') // 獲取本週週一0時0分0秒 moment().startOf('month') // 獲取本月第一天0時0分0秒 moment().endOf('day') // 獲取今天23時59分59秒 moment().endOf('isoWeek') // 獲取本週週日23時59分59秒 moment().endOf('month') // 獲取本月最後一天23時59分59秒 moment().year() // 獲取當前年份 moment().month() // 獲取當前月( 0~11, 0 =>1月, 11=>12月) moment().date() // 獲取今天 moment().day() // 獲取當前星期 (0~6, 0: 週日, 6: 週六) moment().daysInMonth() // 獲取本月的總天數 moment().month(moment().month() - 1).startOf('month').valueOf() // 上個月1號的00:00:00 moment().month(moment().month() - 1).endOf('month').valueOf() // 上個月最後一天的23:59:59 moment().month(moment().month() - 1).startOf('month').valueOf() // 上個季度第一個月1號的00:00:00 moment().month(moment().month() - 1).endOf('month').valueOf() // 上個季度最後一個月最後一天的23:59:59
moment().format('YYYY-MM-DD') moment().format('hh:mm:ss a') // 格式化時分秒(12小時制) moment().format('x') // 格式化時間戳(以毫秒爲單位)
moment().toDate() new Date(moment())
moment().year(2019) // 設置年 moment().month(9) // 設置月( 0~11, 0 =>1月, 11=>12月) moment().date(2) // 設置日期 moment().isoWeekday(1) // 設置日期爲本週週一 moment().add(1, 'years') // 設置下一年 moment().add(1, 'months') // 設置下一月 moment().add(1, 'days') // 設置下一天 moment().add(1, 'weeks') // 設置下一週 moment().subtract(1, 'years') // 設置上一年 moment().subtract(1, 'months') // 設置上一月 moment().subtract(1, 'days') // 設置上一天 moment().subtract(1, 'weeks') // 設置上一週
let startDate = moment().subtract(1, 'weeks') let endDate = moment() endDate.diff(startDate) // 返回毫秒數 endDate.diff(startDate, 'months') // 0 endDate.diff(startDate, 'weeks') // 1 endDate.diff(startDate, 'days') // 7 startDate.diff(endDate, 'days') // -7