++コーディング:パッケージの日付のJS神運用バージョンを

日付形式:

/ **
 *フォーマット日
 * @Param FMT例:YYYY-MM-DDなど
 * @返却値 {*}
 * @constructor
 * / 
Date.prototype.Format =関数(FMT){ // 著者:meizz 
    VAR O = {
         "M +":この .getMonth()+ 1、// 月份 
        "D +":この .getDate()//  
        "H +":この .getHours()// 小时 
        "M +":この .getMinutes()//  
        "S +":この .getSeconds()//  
        "Q +":Math.floor((。 getMonth()+ 3)/ 3)、// 季度 
        "S":この.getMilliseconds()// 毫秒
    }。
    もし(/(y+)/.test(fmt))FMT = fmt.replace(正規表現$ 1、(。この .getFullYear()+ "").SUBSTR(4 -正規表現$ 1 .LENGTH))。
    (O内のvar k)が
         あれば新しい正規表現( "(" + K + ")")。テスト(FMT))FMT = fmt.replace(正規表現。$ 1、(正規表現。$ 1.length == 1)?( O [K]):(( "00" + O [K])SUBSTR(( "" + 。O [K])の長さ)))。
    リターンのfmt;
}。

日付日付を加えた番号の後に取得など:

/ **
 *数値は、余分な日付日付日付を取得した後、など
 * @パラメータ間隔Y等の指定されたタイプ:代表
 * @Param 数削減の価値を高めるために必要||
 * @Param FMT日付形式のオプションパラメータのデフォルト:木2019年10月24日16時57分12秒GMT + 0800( 中国標準時)形式
 * @returns {日}
 * / 
Date.prototype.dateAdd = 関数(間隔、数、FMT)
{
    VARさd = この;
    VAR kは = { 'Y' 'FullYear'、 'Q': '月'、 'M': '月'、 'W': '日'、 'D': '日'、 'H': '時間」、 'N' '分'、 'S': '秒'、 'MS': 'ミリ' }。
    Nが存在する = { 'G':3、 'W':7 }。
    評価( 'd.set' + K [区間] + '(d.get' + K [区間] + '()+' +((N [区間] || 1)*数)+ ')' )。
    場合(FMT){
        戻りd.Format(FMT)を、
    }
    リターンD;
}。

その上に2つの計算日の日付との違い:

/ **
 *など、2つの日付の日付の間の差を計算します
 * @Paramの例を表示する間隔を指定されたタイプ:yは:年です
 * @Param objDate2 objDate2 <=この負
 * @返却値 {*}
 * / 
Date.prototype.dateDiff = 関数(間隔、objDate2)
{
    VaRのD = この、I = {}、T = d.getTime()、T2 = objDate2.getTime()。
    I [ 'Y'] = objDate2.getFullYear() - d.getFullYear()。
    I [ 'Q'] = I [ 'Y'] * 4 + Math.floor(objDate2.getMonth()/ 4)-Math.floor(d.getMonth()/ 4 )。
    I [ 'M'] = I [ 'Y'] * 12 + objDate2.getMonth() - d.getMonth()。
    I [ 'MS'] = objDate2.getTime() - d.getTime()。
    I [ 'W'] = Math.floor((T2 +3.456億)/(6.048億)) - Math.floor((T +3.456億)/(6.048億))。
    I [ 'D'] = Math.floor(T2 / 86400000)-Math.floor(T / 86400000 )。
    I [ 'H'] = Math.floor(T2 / 3600000)-Math.floor(T / 3600000 )。
    I [ 'N'] = Math.floor(T2 / 60000)-Math.floor(T / 60000 )。
    I [ 'S'] = Math.floor(T2 / 1000)-Math.floor(T / 1000 )。
    戻るI [間隔];
}。

デモ:

console.log(新しい日付( '2019年10月23日')DATEADD( 'Y'、1、 'YYYY-MM-DD')。)结果为:2020年10月23日

 

 

おすすめ

転載: www.cnblogs.com/codingmode/p/11727720.html