Obtenir le numéro de semaine de l'année en JavaScript
-
Utilisez les fonctions
getFullYear()
etgetDay()
avec l’objetnew Date()
pour obtenir le numéro de semaine de la date actuelle -
Utilisez la structure de données
DateTime
et ses propriétésweekNumber
de Luxon pour obtenir le numéro de semaine en cours de l’année
Nous allons introduire une méthode pour trouver le numéro de semaine en cours de l’année en JavaScript, en créant l’objet du constructeur new Date()
et les fonctions comme getFullYear()
et getDay()
. Cette méthode trouvera le nombre total de jours de l’année et trouvera le numéro de la semaine. Nous utiliserons les fonctions de l’objet Math
comme floor()
et ceil()
dans cette méthode.
Cet article présentera également une autre méthode pour obtenir le numéro de la semaine en cours en JavaScript à l’aide d’un wrapper javascript Luxon. Luxon est une bibliothèque de dates et d’heures JavaScript. Nous utiliserons la structure de données DateTime
et la propriété weekNumber
de cette bibliothèque. Nous utiliserons également la fonction now
avec la structure de données DataTime
.
Nous allons également démontrer une méthode pour déclarer une variable globale en PHP à l’aide de la fonction define()
. Cette méthode est un moyen de déclarer une variable globale constante en PHP. La valeur de la variable ne peut pas être modifiée ultérieurement.
Utilisez les fonctions getFullYear()
et getDay()
avec l’objet new Date()
pour obtenir le numéro de semaine de la date actuelle
Cette méthode utilise le constructeur new Date()
et son objet ainsi que les fonctions telles que getFullYear()
et getDay()
pour obtenir le numéro de semaine en cours de l’année. L’objet Date
renvoie la date courante. La fonction getDay()
trouve le jour de la semaine en cours dans une valeur entière. Nous pouvons créer un objet du constructeur Date
pour obtenir la date actuelle. L’objet appelle la fonction getFullYear()
pour obtenir le début de l’année en cours. Nous pouvons trouver le nombre total de jours depuis le début de la journée jusqu’à l’heure actuelle en divisant la différence de jours par le nombre total de millisecondes dans une journée. Nous pouvons utiliser la fonction floor()
de l’objet Math
pour arrondir la valeur pour obtenir un nombre entier. Cette méthode calcule enfin le numéro de semaine de l’année, en divisant le nombre total de jours par sept.
Par exemple, créez un objet Date
currentdate
. Créez une autre variable, oneJan
, pour stocker le premier jour de l’année en cours. Pour cela, créez un nouvel objet Date
sur la variable et appelez la fonction getFullYear()
avec l’objet currentdate
comme premier paramètre du constructeur Date
. Utilisez 0
et 1
comme deuxième et troisième paramètre. Soustrayez la variable oneJan
de currentdate
et divisez-la par 86400000
. Enveloppez les opérations dans la fonction Math.floor()
et affectez-la à une variable numberOfDays
. Appelez la fonction getDay()
avec l’objet currentdate
et ajoutez-y la variable numberOfDays
et la valeur 1
. Enveloppez cette opération avec la fonction Math.ceil()
et stockez le résultat dans la variable result
. Connectez-vous la variable dans la console avec la variable currentdate
en utilisant l’interpolation de chaîne.
L’exemple ci-dessous trouve la date du jour puis le premier jour de l’année en cours. Les paramètres 0
et 1
de la deuxième ligne représentent le premier mois et le premier jour de l’année en cours. La soustraction du oneJan
de la currentdate
donne la valeur en millisecondes, de sorte que le total des millisecondes dans une journée qui est 86400000
divise la différence. La fonction getDay()
renvoie le jour sous forme d’entier commençant par 0
, donc on ajoute 1
. Par conséquent, le numéro de la semaine en cours est calculé.
Exemple de code :
currentdate = new Date();
var oneJan = new Date(currentdate.getFullYear(), 0, 1);
var numberOfDays = Math.floor((currentdate - oneJan) / (24 * 60 * 60 * 1000));
var result = Math.ceil((currentdate.getDay() + 1 + numberOfDays) / 7);
console.log(
`The week number of the current date (${currentdate}) is ${result}.`);
Production:
The week number of the current date (Tue May 25 2021 16:55:53 GMT+0545 (Nepal Time)) is 21.
Utilisez la structure de données DateTime
et ses propriétés weekNumber
de Luxon pour obtenir le numéro de semaine en cours de l’année
Nous pouvons utiliser la bibliothèque Luxon pour obtenir le numéro de semaine en cours de l’année avec la structure de données DateTime
et la propriété weeknumber
. Le DateTime
se compose d’un horodatage, d’un fuseau horaire et de propriétés de configuration. La DateHeure
utilisée avec la fonction maintenant
renverra la date et l’heure de l’instant courant dans le fuseau horaire du système. La propriété weekNumber
accède au numéro de semaine de l’année en cours. Nous pouvons utiliser la fonction toISO()
pour convertir le DateTime
au format ISO.
Importez l’objet DateTime
du fichier luxon/src/datetime.js
dans la première ligne. N’oubliez pas de télécharger le code source Luxon. Enregistrez le code source dans un fichier JavaScript et assurez-vous d’inclure le fichier en utilisant la balise script
dans la section HTML. Appelez la fonction now()
avec l’objet DateTime
puis appelez la propriété weekNumber
. Affectez-le à une variable date
. Ensuite, enregistrez la variable date
dans la console. Veuillez consulter la Documentation Luxon pour en savoir plus sur les objets et propriétés DateTime
.
Exemple de code :
import DateTime from 'luxon/src/datetime.js'
const date = DateTime.now().weekNumber
console.log(`The current week number is ${date}`)
Production:
The current week number is 21
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn