J'ai ce code qui obtient la date du jour, puis les jours de la semaine. Parfois, ce code ne fonctionne pas, par exemple, aujourd'hui est 08/15, j'obtiendrai 08/13. Je dois aussi avoir une fonction pour les jours précédents et suivants de la semaine.Obtenez les jours précédents et les prochains jours de la semaine en javascript
var self = this;
var curr = new Date;
self.mult = 0;
self.firstDate = new Date;
self.lastDate = new Date;
var first = curr.getDate() - (curr.getDay()-1);
var last = first + 6;
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
Et ceci est la fonction pour voir les jours précédents de la semaine,
var self= this;
var curr = new Date;
self.mult(self.mult()-7);
var first = curr.getDate() - (curr.getDay()-1) + self.mult();
var last = first + 5;
if(self.mult() <= 0){
last = last + 1;
}
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
Et ceci est la fonction pour voir les prochains jours de la semaine,
var self= this;
var curr = new Date;
self.mult(self.mult()+7);
var first = curr.getDate() - (curr.getDay()-1) + self.mult();
var last = first + 5;
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
Je suis pas sûr mais je pense que seuls les jours précédents de la semaine est le problème.
Voici un exemple de situation.
Scénario 1: utilisateur visite une page, aujourd'hui est 09/15 alors le firstdate doit être 09/12 alors LASTDATE doit être 09/18 l'utilisateur clique suivant, le firstdate doit être 09/19 et le lastDate est 09/25 l'utilisateur clique à nouveau sur suivant, alors le firstDate est le 09/26 et le lastDate est le 10/02 l'utilisateur cliquent sur le précédent, puis le firstDate doit être 09/19 et le lastDate est le 09/25
Scénario 2: L'utilisateur visite une page, l'aujourd'hui est 09/15 puis le premierDate doit être 09/12 puis lastDate doit être 09/18 l'utilisateur cliquez sur le précédent, puis le firstDate doit être 09/5 et lastDate est 09/11 l'utilisateur clique à nouveau sur le précédent, alors le firstDate doit être le 08/29 et le lastDate est le 09/4 l'utilisateur clique sur suivant, alors le firstDate doit être 09/5 et le dernier date est 09/11
Quelqu'un peut-il répondre à un code qui peut faire mes scénarios?
Pourquoi vous mettez 'this' dans la variable' moi? – evolutionxbox
@evolutionxbox C'est une méthode standard de garder 'this' quand 'this' serait sinon changé hors contexte, par exemple dans la boucle '$ .each',' this' est la valeur dans la boucle alors que 'self' est toujours' this 'de l'extérieur de la boucle. Il n'y a pas de raison ici, mais étant donné l'indentation, je suppose qu'il y a d'autres codes qui n'ont pas été inclus pour des raisons de concision. –
@ freedomn-m Merci quand même. Je savais déjà ce que tu as dit. C'était juste que l'OP l'utilise sans raison. – evolutionxbox