Étant donné que dayNumber
provient de 0..6
représentant Monday..Sunday
respectivement.
Les objets Date
/String
peuvent-ils être utilisés pour obtenir le jour de la semaine à partir de dayNumber
?
Cela vous donnera une journée en fonction de l'indice que vous passez:
var weekday=new Array(7);
weekday[0]="Monday";
weekday[1]="Tuesday";
weekday[2]="Wednesday";
weekday[3]="Thursday";
weekday[4]="Friday";
weekday[5]="Saturday";
weekday[6]="Sunday";
console.log("Today is " + weekday[3]);
Sorties "Aujourd'hui c'est jeudi"
Vous pouvez également obtenir l'index des jours en cours à partir de JavaScript avec getDay()
(cependant dans cette méthode, dimanche est 0, lundi est 1, etc.):
var d=new Date();
console.log(d.getDay());
Sorties 1 quand c'est lundi.
Une manière beaucoup plus élégante qui vous permet également d'afficher le jour de la semaine par paramètres régionaux si vous le souhaitez est disponible à partir de la dernière version des scripts ECMA et s'exécute dans tous les derniers navigateurs et node.js:
console.log(new Date().toLocaleString('en-us', { weekday: 'long' }));
Ce code est une version modifiée de ce qui est donné ci-dessus. Il renvoie la chaîne représentant le jour à la place
/**
* Converts a day number to a string.
*
* @param {Number} dayIndex
* @return {String} Returns day as string
*/
function dayOfWeekAsString(dayIndex) {
return ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"][dayIndex];
}
Par exemple
dayOfWeekAsString(0) returns "Monday"
Cela ajoutera une fonction getDayOfWeek () comme prototype à la classe JavaScript Date.
Date.prototype.getDayOfWeek = function(){
return ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][ this.getDay() ];
};
/**
* I convert a day string to an number.
*
* @method dayOfWeekAsInteger
* @param {String} day
* @return {Number} Returns day as number
*/
function dayOfWeekAsInteger(day) {
return ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"].indexOf(day);
}