time.js 時間函數庫

最近本身寫了個時間函數庫,雖然還不算完善,可是我能想到的功能基本都實現了。感興趣的能夠看下。jquery

使用

npm install time-operation --save
複製代碼

文檔

1、工具方法

函數: getCurrentTimeStamp()
功能: 獲取如今時間戳
輸入: 無
輸出: 如今時間戳
事例:
Time.getCurrentTimeStamp()  //1542701124216
複製代碼
函數: getCurrentFullYear()
功能: 獲取如今年份
輸入: 無
輸出: 如今年份
事例:
Time.getCurrentTimeStamp()  //2018
複製代碼
函數: getCurrentMonth()
功能: 獲取如今月份
輸入: 無
輸出: 如今月份 1,2,3,4...
事例:
Time.getCurrentMonth()  //11
複製代碼
函數: getCurrentDate()
功能: 獲取如今月份
輸入: 無
輸出: 如今日期
事例:
Time.getCurrentDate()  //20
複製代碼
函數: getCurrentHours()
功能: 獲取如今小時 24小時制
輸入: 無
輸出: 如今小時
事例:
Time.getCurrentHours()  //16
複製代碼
函數: getCurrentMinutes()
功能: 獲取如今分鐘
輸入: 無
輸出: 如今分鐘
事例:
Time.getCurrentMinutes()  //5
複製代碼
函數: getCurrentSeconds()
功能: 獲取如今秒數
輸入: 無
輸出: 如今秒數
事例:
Time.getCurrentSeconds()  //37
複製代碼
函數: getCurrentMilliseconds()
功能: 獲取如今豪秒數
輸入: 無
輸出: 如今豪秒數
事例:
Time.getCurrentMilliseconds()  //957
複製代碼
函數: getCurrentDay()
功能: 獲取如今是星期幾
輸入: 無
輸出: 如今星期幾 1,2,3,4,5,6,7
事例:
Time.getCurrentDay()  //3
複製代碼
函數: getCurrentQuarter()
功能: 獲取如今是第幾季度
輸入: 無
輸出: 如今季度 1,2,3,4
事例:
Time.getCurrentQuarter()  //3
複製代碼
函數: getCurrentFormatTime(hasHour) 
功能: 獲取如今格式化的時間
輸入: hasHour: 是否要時分秒,類型爲Boolean,默認爲true
輸出: 格式化時間
事例:
Time.getCurrentFormatTime()  //2018-11-20 16:11:47
Time.getCurrentFormatTime(false)  //2018-11-20
複製代碼
函數: isLeapYear(year) 
功能: 判斷是不是閏年
輸入: year: 具體年份,類型爲Boolean,默認爲true
輸出: true or false
事例:
Time.isLeapYear('2018')  //false
Time.isLeapYear(2012)  //true
複製代碼
函數:howManyDays(year,month)
功能:判斷某年 或者 某年某月 一共有多少天
輸入:year: 具體年份 類型number month:具體月份 類型number
事例:
Time.howManyDays(2018);   //365
Time.howManyDays(2018,2)  //28
Time.howManyDays(2012,2)  //29
複製代碼
函數:getWeek(year,month,day)
功能:判斷某年 某月 某日 是 星期幾
輸入:year: 具體年份 類型number或string, month:具體月份 類型number或string, day: 具體日期 類型number或string
事例:
Time.getWeek(2018,2,12);  //1
Time.getWeek(2018,11,23);  //3
複製代碼
函數:formatTime(timeStamp)
功能:將時間戳轉化爲具體時間
通用規則:
         * 時間                 展現文案
         * 當天 [0,1) min       剛剛
         * 當天 [1,60)min       x分鐘前
         * 當天 [1,24)h         x小時前
         * 1天前                昨天
         * 2天前                2天前
         * 3天前                3天前
         * 4天前                年-月-日
輸入:時間戳 [類型:Number]
事例:
Time.formatTime(1550419200000);  //2019-8-18
Time.formatTime(1550635932000);  //兩天前
複製代碼

2、對象方法

說明

構造函數說明: 時間選擇器相似於jquery的選擇器,沒必要使用 new 建立對象,只須要傳入格式化的時間就能夠 例如: Time('2018-12-1') Time('2018-10-2 12:34:22') , 若是傳入的參數不和法,瀏覽器會報錯。npm

函數:format(str)
功能:格式化輸出當前對象表示的時間
輸入:輸出的時間類型 例如 YY/MM/DD hh:mm:ss 或 YY-MM-DD hh:mm:ss
輸出:格式化的時間 例如 2018/12/23 12:23:34 或 2018-12-23 12:23:34
事例
Time('2019-12-11 12:34:56').add(1,'month').format();   //2020-1-11 12:34:56
Time('2019-12-11 12:34:56').add(1,'month').format('YY/MM/DD hh:mm:ss');   //2020/1/11 12:34:56
複製代碼
函數:isBefore(t)
功能:判斷一個時間是否在另外一個時間以前
輸入:t: 類型可使time對象或time字符串
輸出:truefalse
事例
Time('2019-12-11').isBefore('2018-1-1');   //false
Time('2019-12-12').isBefore(Time('2020-12-11'))  //true
複製代碼
函數:isAfter(t)
功能:判斷一個時間是否在另外一個時間以後
輸入:t: 類型可使time對象或time字符串
輸出:truefalse
事例
Time('2019-12-11').isAfter('2018-1-1');   //true
Time('2019-12-12').isAfter(Time('2020-12-11'))  //false
複製代碼
函數:isBetween(t1,t2)
功能:判斷一個時間是否在另兩個時間之間
輸入:t1, t2: 類型可使time對象或time字符串
輸出:truefalse
事例
Time('2019-12-11').isBetween('2018-1-1',Time('2020-1-1'));   //true
複製代碼
函數:add(number,unit)
功能:進行時間的加減法 支持鏈式調用
輸入:number (正數加法,負數爲減法),unit 單位 'year' 'month' 'day' 'hour' 'minute' 'second'
輸出:無,會改變原來的時間對象
事例:
Time('2018-1-1').add(1,'year').format() //2019-1-1 0:0:0
複製代碼
函數:duration(t)
功能:計算兩個時間相差多少天
輸入:t: 類型可使time對象或time字符串
輸出:相差天數,有正有負
事例:
Time('2018-1-1').duration('2018-1-4') //3
Time('2018-1-1').duration('2017-12-30') //-2
複製代碼
函數:countDown(timer,fn)
功能:倒計時
輸入:timer: 定時器,當時間到了自動可以清楚 fn:回調函數
輸出:{ day: 0, hour: 0, minute: 0, second: 0 } 表示時間到,或者逾期
事例:
let timer = setInterval(function (){
    var targetTime = '2018-12-01 09:56:00';
    var obj = Time(targetTime).countDown(timer,() => {
        console.log('時間到了');
    });
    console.log(obj);
},1000);
事例輸出:
{ day: 0, hour: 0, minute: 0, second: 5 }
{ day: 0, hour: 0, minute: 0, second: 4 }
{ day: 0, hour: 0, minute: 0, second: 3 }
{ day: 0, hour: 0, minute: 0, second: 2 }
{ day: 0, hour: 0, minute: 0, second: 1 }
時間到了
{ day: 0, hour: 0, minute: 0, second: 0 }
複製代碼
相關文章
相關標籤/搜索