鏈接:momentjs中文網(wǎng),dayjs(github)
moment與dayjs都是一種用于時(shí)間處理的插件,可對(duì)時(shí)間進(jìn)行格式調(diào)整及算法處理,二者用法相似,方法也大同小異,dayjs支持多語(yǔ)言,將不同功能拆分到不同文件中,所以比較小。
1 moment
使用方法:
引入js文件
<script type="text/javascript" src="/js/moment-cn.min.js"></script>
常用方法:
1 獲取當(dāng)前時(shí)間 var nowTime = moment();
2時(shí)間格式化? format()
?? eg:moment().format("YYYY-MM-DD") ;注:format()格式化的格式可任意定義,format('YYYY-MM-DD hh:mm:ss')精確到秒;
3 fromNow() 距現(xiàn)在時(shí)間 (時(shí)、分或秒)moment(theTime).startOf('minutes').fromNow();
4? 時(shí)間先后比較:isSame()比較是否相同,?isBefore(),isAfter() ;
eg:moment(m.format('YYYY-MM-DD')).isSame(moment().format("YYYY-MM-DD"));? moment(theTime).isBefore(moment());
2 dayjs
使用方法:
<script type="text/javascript" src="/js/dayjs.min.js"></script>
要使用中文版,需在使用之前添加 dayjs.extend(dayjs_plugin_relativeTime).locale('zh-cn');//轉(zhuǎn)換為中文;
常用方法:
1獲取當(dāng)前時(shí)間 var nowTime = dayjs();
2 時(shí)間格式化 format():與momentjs基本相同 eg:dayjs().format('YYYY-MM-DD'); dayjs(theTime).format('YYYY-MM-DD'); dayjs('2019.03.16 14:23:31').format('YYYY年MM月DD日 hh:mm:ss');
3 fromNow() 距現(xiàn)在時(shí)間 (智能顯示時(shí)、分或秒)eg:var m2 = dayjs(theTime).fromNow();
4 時(shí)間先后比較:與momentjs基本相同 isSame(),isBefore(),isAfter() eg:dayjs('2018-06-01').isBefore(dayjs('2018-06-02')),dayjs().isSame(dayjs()),dayjs().isAfter(dayjs())
5? 獲取年、月、日、時(shí)、分、秒、毫秒 dayjs().year(), dayjs().month(), dayjs().date(), dayjs().day()<星期> dayjs().hour()時(shí), dayjs().minute()分, dayjs().second(), dayjs().millsecond()毫秒
6 獲取時(shí)間戳 dayjs().valueOf()轉(zhuǎn)換到秒,dayjs().unix() 轉(zhuǎn)換到毫秒;時(shí)間戳也可直接使用format()方法格式化 eg:dayjs('2019.03.19 12:23:31').valueOf());? dayjs(1552969259484).format('YYYY-MM-DD hh:mm:ss'));
7 獲取時(shí)間差diff() eg:var date1 = dayjs('2019-01-25');var date2=dayjs('2018-06-05');date1.diff(date2);=>20214000000, date1.diff(date2,'month') =>7 ,date1.diff(date2,'day')=>233
8 檢測(cè)時(shí)間是否有效 dayjs().isValid();