450 Stimmen

Wie erhalte ich Monat und Datum von JavaScript im 2-stelligen Format?

Wenn wir anrufen getMonth() y getDate() en date Objekt, erhalten wir die single digit number . Zum Beispiel :

Für january wird angezeigt 1 aber ich muss es anzeigen als 01 . Wie kann man das tun?

1voto

Mohid Kazi Punkte 74

Ich wollte so etwas machen, und das habe ich getan

p.s. ich weiß, dass es oben die richtige(n) Antwort(en) gibt, aber ich wollte hier nur etwas Eigenes hinzufügen

const todayIs = async () =>{
    const now = new Date();
    var today = now.getFullYear()+'-';
    if(now.getMonth() < 10)
        today += '0'+now.getMonth()+'-';
    else
        today += now.getMonth()+'-';
    if(now.getDay() < 10)
        today += '0'+now.getDay();
    else
        today += now.getDay();
    return today;
}

1voto

samet Punkte 508

Wenn Sie nachsehen kleiner als 10 müssen Sie dafür keine neue Funktion erstellen. Weisen Sie einfach eine Variable in Klammern zu und geben Sie sie mit dem ternären Operator zurück.

(m = new Date().getMonth() + 1) < 10 ? `0${m}` : `${m}`

1voto

Arun Verma Punkte 1
currentDate(){
        var today = new Date();
        var dateTime =  today.getFullYear()+'-'+
                        ((today.getMonth()+1)<10?("0"+(today.getMonth()+1)):(today.getMonth()+1))+'-'+
                        (today.getDate()<10?("0"+today.getDate()):today.getDate())+'T'+
                        (today.getHours()<10?("0"+today.getHours()):today.getHours())+ ":" +
                        (today.getMinutes()<10?("0"+today.getMinutes()):today.getMinutes())+ ":" +
                        (today.getSeconds()<10?("0"+today.getSeconds()):today.getSeconds());        
            return dateTime;
},

1voto

Chí Nguyễn Punkte 41
var net = require('net')

function zeroFill(i) {
  return (i < 10 ? '0' : '') + i
}

function now () {
  var d = new Date()
  return d.getFullYear() + '-'
    + zeroFill(d.getMonth() + 1) + '-'
    + zeroFill(d.getDate()) + ' '
    + zeroFill(d.getHours()) + ':'
    + zeroFill(d.getMinutes())
}

var server = net.createServer(function (socket) {
  socket.end(now() + '\n')
})

server.listen(Number(process.argv[2]))

1voto

user3336882 Punkte 2703

Meine Lösung:

function addLeadingChars(string, nrOfChars, leadingChar) {
    string = string + '';
    return Array(Math.max(0, (nrOfChars || 2) - string.length + 1)).join(leadingChar || '0') + string;
}

Uso:

var
    date = new Date(),
    month = addLeadingChars(date.getMonth() + 1),
    day = addLeadingChars(date.getDate());

jsfiddle: http://jsfiddle.net/8xy4Q/1/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X