javascript - Bibliothèque recommandée pour le formatage des dates?
淡淡烟草味
淡淡烟草味 2017-05-19 10:13:26
0
2
588


Le projet utilise moment.js, mais après emballage, il s'appuie sur de nombreux fichiers de localisation. Existe-t-il un moyen de charger uniquement le chinois ?

Ou avez-vous des recommandations pour d’autres bibliothèques légères de formatage de date ?

淡淡烟草味
淡淡烟草味

répondre à tous(2)
漂亮男人

Voilàmoment.js官网下在moment-with-locales.min.jsah, il n'y a qu'un seul fichier

大家讲道理

Je pense que moment.js est une très bonne bibliothèque pour le format de date. Elle encapsule de nombreuses fonctions. Si vous ne souhaitez pas utiliser moment, vous pouvez étendre Date vous-même. La méthode d'encapsulation est la suivante :

Date.prototype.format = function(pattern){
    function zeroize(num){
        return num<10?"0"+num:num;
    };
    var pattern = pattern;    //    YYYY-MM-DD 或 MM-DD-YYYY 或 YYYY-MM-DD , hh : mm : ss
    var dateObj = {
        "Y" : this.getFullYear(),
        "M" : zeroize(this.getMonth()+1),
        "D" : zeroize(this.getDate()),
        "h" : zeroize(this.getHours()),
        "m" : zeroize(this.getMinutes()),
        "s" : zeroize(this.getSeconds())
    };
    return pattern.replace(/YYYY|MM|DD|hh|mm|ss/g,function(match){
        switch(match){
            case "YYYY" :
                return dateObj.Y;
            case "MM" :
                return dateObj.M;
            case "DD" :
                return dateObj.D;
            case "hh" :
                return dateObj.h;
            case "mm" :
                return dateObj.m;
            case "ss" :
                return dateObj.s;
        };
    });
};
Date.prototype.past = function(pattern,pastDays){
    function zeroize(num){
        return num<10?"0"+num:num;
    };
    var pastday = new Date((this - 0) - 1000*60*60*24*pastDays);
    var pattern = pattern;    //    YYYY-MM-DD 或 MM-DD-YYYY 或 YYYY-MM-DD , hh : mm : ss
    var dateObj = {
        "Y" : pastday.getFullYear(),
        "M" : zeroize(pastday.getMonth()+1),
        "D" : zeroize(pastday.getDate()),
        "h" : zeroize(pastday.getHours()),
        "m" : zeroize(pastday.getMinutes()),
        "s" : zeroize(pastday.getSeconds())
    };
    return pattern.replace(/YYYY|MM|DD|hh|mm|ss/g,function(match){
        switch(match){
            case "YYYY" :
                return dateObj.Y;
            case "MM" :
                return dateObj.M;
            case "DD" :
                return dateObj.D;
            case "hh" :
                return dateObj.h;
            case "mm" :
                return dateObj.m;
            case "ss" :
                return dateObj.s;
        };
    });
};
Date.prototype.yestoday = function(pattern){
    return this.past(pattern,1);
};
Date.prototype.tomorrow = function(pattern){
    return this.past(pattern,-1);
}
Date.prototype.formatDate=function(str){
    str= str.toLowerCase();
    var that=this;

    if(/yyyy/.test(str)){
        str=str.replace(/yyyy/,this.getFullYear());
    }
    if(/mm/.test(str)){
        str=str.replace(/mm/,this.getMonth()+1);
    }
    if(/dd/.test(str)){
        str=str.replace(/dd/,this.getDate());
    }
    if(/hh/.test(str)){
        str=str.replace(/hh/,function(){
            return that.getHours()>=10?that.getHours():("0"+that.getHours());
        });
    }
    if(/ii/.test(str)){
        str=str.replace( /ii/,function(){
            return that.getMinutes()>=10?that.getMinutes():("0"+that.getMinutes());
        });
    }
    if(/ss/.test(str)){
        str=str.replace( /ss/,function(){
            return that.getSeconds()>=10?that.getSeconds():("0"+that.getSeconds());
        });
    }
    if(/week/.test(str)){
        if(this.getDay()==0){
            str=str.replace(/week/,'星期日' );
        }
        if(this.getDay()==1){
            str=str.replace(/week/,'星期一' );
        }
        if(this.getDay()==2){
            str=str.replace(/week/,'星期二' );
        }
        if(this.getDay()==3){
            str=str.replace(/week/,'星期三' );
        }
        if(this.getDay()==4){
            str=str.replace(/week/,'星期四' );
        }
        if(this.getDay()==5){
            str=str.replace(/week/,'星期五' );
        }
        if(this.getDay()==6){
            str=str.replace(/week/,'星期六' );
        }
    }
    return str
}

Format date : new Date(utc time).format("YYYY-MM-DD")

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal