Ich versuche, das Datum der letzten Woche in Javascript ohne die Zeit zu erhalten.

So zum Beispiel 10-02-2012 anstelle von 10-02-12 13:34:56 GMT.

Gibt es dafür eine einfache Lösung?

Vielen Dank!

Bearbeiten:

Ich versuche, dies dynamisch zu gestalten, sodass die resultierende Variable immer eine Woche vor dem aktuellen Datum liegt. Folgendes habe ich getan, um die heutige Variable zu berechnen, wenn dies hilft oder verwendet werden kann!

 var currentTime = new Date();
                            var month = currentTime.getMonth() + 1
                            var day = currentTime.getDate();
                            var year = currentTime.getFullYear();
                            var today = month + "-" + day + "-" + year;
                            alert(today)
16
streetlight 9 Okt. 2012 im 22:16

6 Antworten

Beste Antwort

Ich bevorzuge so etwas

function getLastWeek() {
  var today = new Date();
  var lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 7);
  return lastWeek;
}

var lastWeek = getLastWeek();
var lastWeekMonth = lastWeek.getMonth() + 1;
var lastWeekDay = lastWeek.getDate();
var lastWeekYear = lastWeek.getFullYear();

var lastWeekDisplay = lastWeekMonth + "/" + lastWeekDay + "/" + lastWeekYear;
var lastWeekDisplayPadded = ("00" + lastWeekMonth.toString()).slice(-2) + "/" + ("00" + lastWeekDay.toString()).slice(-2) + "/" + ("0000" + lastWeekYear.toString()).slice(-4);

console.log(lastWeekDisplay);
console.log(lastWeekDisplayPadded);

Wenn Sie die jQuery-Benutzeroberfläche verwenden, können Sie dies anstelle der manuellen Schritte zum Erstellen der Zeichenfolge tun

var lastWeekDisplay = $.datepicker.formatDate('mm/dd/yy', getLastWeek());

Oder für heute

var todayDisplay = $.datepicker.formatDate('mm/dd/yy', new Date());
38
Javascript Lover - SKT 3 Sept. 2018 im 07:28
 var firstDay = new Date("2009/10/02");
 var previousweek= new Date(firstDay.getTime() - 7 * 24 * 60 * 60 * 1000);

Schauen Sie sich diesen Link an. Es wird helfen: - http://code.google.com/p/datejs/

17
Rahul Tripathi 9 Okt. 2012 im 18:18

Wenn Sie dies wirklich aus einem vollständigen Zeitstempel wie 10-02-12 13:34:56 GMT erstellen möchten, möchten Sie möglicherweise Folgendes tun:

var time = '10-02-12 13:34:56 GMT';
document.write(time.substr(0,7));
0
Bastiaan ten Klooster 9 Okt. 2012 im 18:17

Sie können einfach tun

new Date().setDate(new Date().getDate() - 7)
3
Haythem Farhat 23 Nov. 2018 im 11:51

Verwenden Sie diesen Code, um eine beliebige Anzahl von Tagen zu subtrahieren, da ich 9 ausgewählt habe. Dies ergibt das Ergebnis der letzten 10 Tage, einschließlich heute

var date = new Date();
    var day=date.getDate();
    var month=date.getMonth() + 1;
    var year=date.getFullYear();
    var startDate=day+"/"+month+"/"+year;
    var dayBeforeNineDays=moment().subtract(9, 'days').format('DD/MM/YYYY');
    startDate=dayBeforeNineDays;
    var endDate=day+"/"+month+"/"+year;
0
Zubair 15 März 2019 im 04:59

Wir können keine Frage zum Javascript-Datum beantworten, ohne Moment.js zu erwähnen.

moment().subtract('days', 7).format('MM-DD-YYYY')
12
u.k 7 Nov. 2013 im 04:46