J'utilise une fonction dans des JS angulaires pour générer les dates de la dernière semaine à partir de la date d'aujourd'hui. Je stocke ces dates dans un tableau puis en utilisant ce tableau pour inonder une liste déroulante. Ce qui suit est le code qui est utilisé par moi.
generate() {
this.date_new = [];
var date = new Date();
var date1 = new Date();
for (var i = 0; i < 7; i++) {
date.setDate(date1.getDate() - i);
var a = date.toString();
var str = this.convert(a);
this.date_new.push(str);
}
}
3 Réponses :
La méthode setDate () définit le jour de l'objet de date par rapport au Début du mois actuellement défini. p> blockQuote>
Le problème ici consiste à utiliser la même date Comme on peut le voir dans Paramètres Valeur de la valeur forte> dans le Link ici . Valeurs zéro et négative dans par conséquent au Vous devez modifier le code à quelque chose comme ceci: P> la variable code> dans la boucle. Vous devez le réinitialiser. setDate () code> définit la date du mois précédent. p> setDate (0) code>, la valeur de la date est définie sur le dernier jour de février. Depuis que vous utilisez la même variable, setDate (-1) Code> prend le mois précédent à partir de février, vous obtenez Jan Jan. P> generate() {
this.date_new = [];
var date1 = new Date();
for (var i = 0; i < 7; i++) {
// re-initialize date
var date = new Date();
date.setDate(date1.getDate() - i);
var a = date.toString();
var str = this.convert(a);
this.date_new.push(str);
}
}
Merci à @Rroyson, toutefois une explication à cela pourrait aider.
@Ashutoshkumar J'ai ajouté une brève explication. Si vous pensez qu'il aborde bien votre requête, corrigez la réponse comme acceptée. Merci :)
Le problème ici est que les nombres négatifs à l'intérieur de la méthode de SetDate ne fonctionnent pas très bien.
Veuillez mettre à jour le code à quelque chose comme ci-dessous: p> espère que cela résoudra votre problème. P> P>
Pourriez-vous également partager la fonction
ceci.convert () code>?convertir (date) {var str = date.split (""); Retour Str [0] + "" + STR [1] + "+ STR [2] +" "+ STR [3]}
J'ai testé cette fonction.Il ne fonctionne pas pour la date d'aujourd'hui.
En testant, je veux dire le code JavaScript pur, sans aucune idée associée.