Appliquer la notion
Dans le cadre de la gestion d'un planning de réunion qui regroupe des acteurs situés dans le monde entier, on choisit de traiter les dates qui apparaissent dans les échanges de mails.
Pour cela, on met un place un code qui formate une date à l'aide de l'interface Date
de JavaScript pour afficher l'afficher dans un format explicite.
function formatDateToString( date ){
const options = {
weekday : 'long'
year: 'numeric'
month : 'long'
day : 'numeric'
hour : 'numeric'
minute : 'numeric'
second: 'numeric'
}
const locale = 'fr-FR'
const dateString = new Date(date).toLocaleDateString(locale,options)
return dateString
}
formatDateToString("2020-03-15")
Néanmoins, l'exemple précédent a des problèmes de syntaxe et est mal formaté.
Dans cet exercice, on va utiliser le linter de Repl.it et un formateur disponible en ligne (https://beautifier.io/) pour corriger ces problèmes.
Question
Copier le contenu de ce fichier index.js
dans Repl.it.
Question
Le linter de Repl.it indique que le code comporte des erreurs, lesquelles ?
Corriger ces erreurs.
Solution
On obtient des erreurs du type :
year: 'numeric'
^^^^
SyntaxError: Unexpected identifier
En effet, un enregistrement doit séparer ses composantes par des virgules, qu'il faut ajouter dans options
.
function formatDateToString( date ){
const options = {
weekday : 'long',
year: 'numeric',
month : 'long',
day : 'numeric',
hour : 'numeric',
minute : 'numeric',
second: 'numeric'
}
const locale = 'fr-FR'
const dateString = new Date(date).toLocaleDateString(locale,options)
return dateString
}
formatDateToString("2020-03-15")
Question
Formater le code corrigé avec en formateur en ligne comme https://beautifier.io/ ou directement avec le formateur de Repl.it.
Solution
On obtient le code formaté suivant avec https://beautifier.io/ :
function formatDateToString(date) {
const options = {
weekday: 'long',
year: 'numeric',
month: 'long',
day: 'numeric',
hour: 'numeric',
minute: 'numeric',
second: 'numeric'
}
const locale = 'fr-FR'
const dateString = new Date(date).toLocaleDateString(locale, options)
return dateString
}
formatDateToString("2020-03-15")
Question
Comparer les différences entre le code corrigé et non corrigé avec cet outil de différence en ligne : https://text-compare.com/
Quels sont les éléments qui ont été corrigés ?
Solution
Les indentations et les espaces ont été corrigés.