web-dev-qa-db-fra.com

Comment obtenir une année à 2 chiffres avec / Javascript?

J'essaie de trouver du code javascript qui écrira la date du jour dans ce format: mmddyy

Tout ce que j'ai trouvé utilise 4 années et j'ai besoin de 2 chiffres.

57
Brandon

La réponse spécifique à cette question se trouve dans cette ligne ci-dessous:

//pull the last two digits of the year
//logs to console
//creates a new date object (has the current date and time by default)
//gets the full year from the date object (currently 2017)
//converts the variable to a string
//gets the substring backwards by 2 characters (last two characters)    
console.log(new Date().getFullYear().toString().substr(-2));

Exemple de formatage de date et heure complète (MMddyy): jsFiddle

JavaScript:

//A function for formatting a date to MMddyy
function formatDate(d)
{
    //get the month
    var month = d.getMonth();
    //get the day
    //convert day to string
    var day = d.getDate().toString();
    //get the year
    var year = d.getFullYear();
    
    //pull the last two digits of the year
    year = year.toString().substr(-2);
    
    //increment month by 1 since it is 0 indexed
    //converts month to a string
    month = (month + 1).toString();

    //if month is 1-9 pad right with a 0 for two digits
    if (month.length === 1)
    {
        month = "0" + month;
    }

    //if day is between 1-9 pad right with a 0 for two digits
    if (day.length === 1)
    {
        day = "0" + day;
    }

    //return the string "MMddyy"
    return month + day + year;
}

var d = new Date();
console.log(formatDate(d));
109
abc123

Étant donné un objet de date:

date.getFullYear().toString().substr(2,2);

Il retourne le nombre sous forme de chaîne. Si vous le voulez sous forme d’entier, placez-le simplement dans la fonction parseInt ():

var twoDigitsYear = parseInt(date.getFullYear().toString().substr(2,2), 10);

Exemple avec l'année en cours sur une ligne:

var twoDigitsCurrentYear = parseInt(new Date().getFullYear().toString().substr(2,2));
49
Martin Lantzsch
var d = new Date();
var n = d.getFullYear();

Oui, n vous donnera l’année à 4 chiffres, mais vous pouvez toujours utiliser une sous-chaîne ou quelque chose de similaire pour fractionner l’année, vous donnant ainsi seulement deux chiffres:

var final = n.toString().substring(2);

Cela vous donnera les deux derniers chiffres de l'année (2013 deviendra 13, etc ...)

S'il y a un meilleur moyen, j'espère que quelqu'un le publie! C’est la seule façon dont je puisse penser. Faites-nous savoir si cela fonctionne!

12
var currentYear =  (new Date()).getFullYear();   
var twoLastDigits = currentYear%100;

var formatedTwoLastDigits = "";

if (twoLastDigits <10 ) {
    formatedTwoLastDigits = "0" + twoLastDigits;
} else {
    formatedTwoLastDigits = "" + twoLastDigits;
}
7
VirtualTroll

une autre version:

var yy = (new Date().getFullYear()+'').slice(-2);
6
Guido Preite