日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

TypeScript 2 : 获取当前日期及前后范围日期【Array】

發(fā)布時間:2025/3/11 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TypeScript 2 : 获取当前日期及前后范围日期【Array】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

原文鏈接:http://blog.csdn.net/crper/article/details/55194334

---------------------------------------------------

前言

今天有個接口字段需求,要寫一個今天及前幾天的日期傳過去; 在網(wǎng)上找了下都木有什么比較好的方案;就自己寫了一個。 因?yàn)榧夹g(shù)棧就是NG2+TS2+WEBPACK,這里的代碼需要一定的TS2及ES6的基礎(chǔ)

 代碼

/*** @param {number} range* @param {string} [type]* @memberOf VehicleOverviewComponent* @description 獲取今天及前后天*/getRangeDate( range: number, type?: string ) {const formatDate = ( time: any ) => {// 格式化日期,獲取今天的日期const Dates = new Date( time );const year: number = Dates.getFullYear();const month: any = ( Dates.getMonth() + 1 ) < 10 ? '0' + ( Dates.getMonth() + 1 ) : ( Dates.getMonth() + 1 );const day: any = Dates.getDate() < 10 ? '0' + Dates.getDate() : Dates.getDate();return year + '-' + month + '-' + day;};const now = formatDate( new Date().getTime() ); // 當(dāng)前時間const resultArr: Array<any> = [];let changeDate: string;if ( range ) {if ( type ) {if ( type === 'one' ) {changeDate = formatDate( new Date().getTime() + ( 1000 * 3600 * 24 * range ) );console.log( changeDate );}if ( type === 'more' ) {if ( range < 0 ) {for ( let i = Math.abs( range ); i >= 0; i-- ) {resultArr.push( formatDate( new Date().getTime() + ( -1000 * 3600 * 24 * i ) ) );console.log( resultArr );}} else {for ( let i = 1; i <= range; i++ ) {resultArr.push( formatDate( new Date().getTime() + ( 1000 * 3600 * 24 * i ) ) );console.log( resultArr );}}}} else {changeDate = formatDate( new Date().getTime() + ( 1000 * 3600 * 24 * range ) );console.log( changeDate );}}}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

調(diào)用及結(jié)果

  • range參數(shù)支持正負(fù)數(shù),里面也加了判斷;
  • type【為可選參數(shù)】有兩種,一個是字符串one,一個是more;前者返回一個指定的日期;后者返回一個排序好的范圍
  • getRangeDate( -6 );// 結(jié)果:2017-02-09getRangeDate( -6, 'one' );// 結(jié)果:2017-02-09
    • 1
    • 2
    • 1
    • 2
    getRangeDate( -6, 'more' );// 結(jié)果// ["2017-02-09", "2017-02-10", "2017-02-11", "2017-02-12", "2017-02-13", "2017-02-14", "2017-02-15"]
    • 1
    • 2
    • 3
    • 1
    • 2
    • 3

    總結(jié)

    就是用時間戳進(jìn)行換算,然后通過內(nèi)置函數(shù)獲取對應(yīng)字段進(jìn)行拼接,,這里沒有帶時分秒,有興趣的可以加個可選參數(shù)把時分秒帶上。。因?yàn)槲疫@里不需要用到,所以我就沒加進(jìn)去了。。

    結(jié)果集為數(shù)組,但不僅限于數(shù)組,也可以改成對象。??茨銈兿矚g啦


    總結(jié)

    以上是生活随笔為你收集整理的TypeScript 2 : 获取当前日期及前后范围日期【Array】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。