Moment.js時間
format(“YYYY-MM-DD”) "-"可以換 年/月/日或?/?/?
console.log(moment().format("YYYY-MM-DD HH:mm:ss")); //當前時間
console.log(moment().subtract(10, "days").format("YYYY-MM-DD")); //當前時間的前10天時間
console.log(moment().subtract(1, "years").format("YYYY-MM-DD")); //當前時間的前1年時間
console.log(moment().subtract(3, "months").format("YYYY-MM-DD")); //當前時間的前3個月時間
console.log(moment().subtract(1, "weeks").format("YYYY-MM-DD")); //當前時間的前一個星期時間
兩個時間差
var date1 = new Date('2013/04/02 18:00')
var date2 = new Date('2013/04/02 19:22:21')
var s1 = date1.getTime(),s2 = date2.getTime();
var total = (s2 - s1)/1000;
var day = parseInt(total / (24*60*60));//計算整數天數
var afterDay = total - day*24*60*60;//取得算出天數後剩餘的秒數
var hour = parseInt(afterDay/(60*60));//計算整數小時數
var afterHour = total - day*24*60*60 - hour*60*60;//取得算出小時數後剩餘的秒數
var min = parseInt(afterHour/60);//計算整數分
var afterMin = total - day*24*60*60 - hour*60*60 - min*60;//取得算出分後剩餘的秒數
##快速求解兩個時間之間的天數
已知一個起始時間一個結束時間,求這個時間段內的所有天數。
var a = moment([2016, 6, 12]);
var b = moment([2016, 6, 22]);
a.from(b);
當然啦,前提是需要引入moment.js的,可在官網下載。
方法二:
var num = new Date("2016-06-22").getTime() - new Date("2016-06-12").getTime();
var days = num/1000/60/60/24;
如果想要獲取這段時間內具體的日期,
var date = '2015-05-12--2016-06-12'.split('--');
function getDate(start,end){
start = new Date(start).getTime();
end = new Date(end).getTime();
var date = [];
for(;start <= end;start += 86400000){
var tmp = new Date(start);
date.push(tmp.getFullYear()+'-'+(tmp.getMonth()+1)+'-'+tmp.getDate());
}
return date;
}
console.log(getDate(date[0],date[1]));
輸出結果:
##momentjs 求小時差異
var now1 = moment(moment().unix()*1000); //獲取unix時間戳 需要*1000
var befor_time = moment(1470040905000) ; // 後臺介面給的時間戳
//判斷小時差
var hour_gap = now1.diff(befor_time,'hours');
if( hour_gap > 12) {
var day=moment(befor_time).format("YYYY-MM-DD") ;
console.log(day)
}else{
console.log(moment(befor_time).fromNow())
}
##幾個方法:
(1) 日期格式化
moment().format(); // 2016-02-29T14:03:30+08:00
moment().format('YYYY-MM-DD HH:mm:ss'); //2016-02-29 14:10:12
moment(new Date(2016, 2, 29, 15, 10, 12)).format('YYYY-MM-DD HH:mm:ss'); //2016-02-29 14:10:12
moment().format('X'); //1410715640.579 時間戳,秒
moment().format('x'); //1410715640579 時間戳,毫秒
(2) 相對日期
moment().add(7, 'days').add(1, 'months'); // with chaining
moment().add({days:7,months:1}); // with object literal
var startDate = moment().startOf('day').format('YYYY-MM-DD HH:mm:ss'); //一天開始
var endDate = moment().endOf('day'); //一天結尾
##javascript:針對yyyy-MM-dd hh:mm:ss
格式的毫秒轉換
例如轉換:
new Date("2015-11-7 22:05").getTime();
為了轉換時間為毫秒,這個表示式在Chrome下沒有問題,可以正常執行,不過在FireFox下則解析不了:
獲取的資料為NaN,控制檯會有 Date { Invalid Date } .
如果轉換格式為 yyyy/MM/dd hh:mm:ss
,則都可以支援.所以一般解決辦法是通過替換.
另外也可以引入一些第三方的JS庫來處理這個問題,例如moment.js,
eg:
var datetime = moment().format(‘YYYY-MM-DD HH:mm:ss’);
ouput: 2015-11-7 22:18:39
var time = moment(‘2015-11-7 22:17:47′,’YYYY-MM-DD HH:mm:ss’).valueOf();
ouput:1446905867000
##快捷的時間轉化-moment
轉化:
e.g: moment(timeStamp).format('YYYY-MM-DD HH:mm:ss');
計算:
let date21 = moment().format('MMMM Do YYYY, h:mm:ss a');//當前時間
let date22 = moment().subtract(1, 'minutes').format('MMMM Do YYYY, h:mm:ss a');//1分鐘前
let date24 = moment().subtract(1, 'hours').format('MMMM Do YYYY, h:mm:ss a');//1小時前
let date26 = moment().subtract(1, 'days').format('MMMM Do YYYY, h:mm:ss a');//1天前
let date27 = moment().subtract(1, 'weeks').format('MMMM Do YYYY, h:mm:ss a');//1周前
//時間戳
let date3 = moment().valueOf();//當前時間的時間戳
let date4 = moment().subtract(1, 'minutes').valueOf();//1分鐘前時間戳
相關文章
- 格式化時間 moment.jsJS
- 使用moment.js輕鬆管理日期和時間JS
- ⏰Day.js 2kB超輕量時間庫 和Moment.js一樣的APIJSAPI
- Moment.js 2.22.2 原始碼JS原始碼
- Moment.js學習(一)原始碼JS原始碼
- MySQL時間戳、時間MySql時間戳
- Linux時間設定系統時間、硬體時間和時間服務Linux
- mysql時間操作(時間差和時間戳和時間字串的互轉)MySql時間戳字串
- 建立時間和保持時間
- 一個日期處理類庫moment.jsJS
- 獲取時間戳,幾個時間點的時間戳時間戳
- 時間段時間點自己理解
- C# 時間戳轉時間C#時間戳
- 時間型別和時間戳型別時間戳
- 直播軟體搭建,當前時間、既定時間後的時間及時間比較大小
- 時間
- Excel中時間戳轉換時間Excel時間戳
- 兩個時間戳的時間差時間戳
- 時間相減和時間轉換
- 時間戳轉化為時間格式時間戳
- PostgreSQL 插入時間與更新時間(qbit)SQL
- 查詢時若時間為空,開始時間取今天的零點,結束時間取當前時間
- 【時間戳轉普通時間格式的方法】時間戳
- pbootcms模板如何呼叫時間 時間格式大全boot
- 時間軸、流程類時間軸繪製
- 時間相差秒數_Golang 時間操作大全Golang
- ubuntu 修改時區或時間 及網路同步時間Ubuntu
- 時間戳與時間字串的多時區轉換時間戳字串
- JavaScript計算兩個時間點之間的時間差JavaScript
- python中的時間轉換,秒級時間戳轉string,string轉時間Python時間戳
- 時間embedding
- 時間軸
- 時間管理
- c++ 獲取當前時間周初凌晨時間戳(獲取當前時間週一凌晨時間戳)C++時間戳
- 修改CentOS伺服器時間為北京時間CentOS伺服器
- PAT-B 1026 程式執行時間【時間】
- Java 獲取本地時間與網路時間Java
- Linux使用ntp時間伺服器同步時間Linux伺服器