Variables dans JS

Pour toutes les discussions javascript, jQuery et autres frameworks
Répondre
Horace
Messages : 10
Enregistré le : 29 avr. 2019, 11:00

Variables dans JS

Message par Horace » 04 juin 2019, 08:43

Bonjour,
Encore moi !
J'ai trouvé sur le Net un petit quelque-chose pour remonter dans html la date et l'heure.
Ca marche très bien.
Html

Code : Tout sélectionner

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Afficher la date et l'heure en temps réel en javascript</title>
        <script type="text/javascript" src="date_heure.js"></script>
    </head>
    <body>
            <span id="date_heure"></span>
         <script type="text/javascript">window.onload = date_heure('date_heure');</script>
    </body>
</html>
JS

Code : Tout sélectionner

function date_heure(id)
{
        date = new Date;
        annee = date.getFullYear();
		annee = (annee - 2000);
        moi = date.getMonth();
		if(moi<10)
        {
                moi = "0" + moi;
        }
        mois = new Array('Janvier', 'F&eacute;vrier', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Ao&ucirc;t', 'Septembre', 'Octobre', 'Novembre', 'D&eacute;cembre');
        j = date.getDate();
        jour = date.getDay();
        jours = new Array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');
		if(j < 10)
        {
                j = "0" + j;
        }
        h = date.getHours();
        if(h < 10)
        {
                h = "0" + h;
        }
        m = date.getMinutes();
        if(m < 10)
        {
                m = "0" + m;
        }
        s = date.getSeconds();
       if(s <10 )
        {
                s = "0"+s;
        }
 		resultat = j + "-" + moi + "-" + annee + " " + h + "." +m;
        document.getElementById(id).innerHTML = resultat;
        setTimeout('date_heure("'+id+'");','1000');
        return true;
}
Mais vous avez ce que c'est, on en veut toujours plus !
Je voudrai remonter d'un seul coup non pas une variable contenant le tout, mais trois variables, une contenant seulement la date, une contenant seulement l'heure et une contenant le tout. Est-ce possible ?
Pour l'instant, j'appelle trois fois la fonction, en modifiant le contenu de la variable 'resultat'. Ca marche très bien, mais ce n'est pas tellement élégant, et je suis sûr qu'on peut faire mieux !
Merci d'un conseil que je suivrai, et comme ça, j'aurai encore appris quelque chose.
Salutations cordiales à tous
Horace

Avatar du membre
webmaster
Administrateur du site
Messages : 563
Enregistré le : 28 févr. 2017, 15:19

Re: Variables dans JS

Message par webmaster » 04 juin 2019, 10:24

Bonjour,

Dans ce cas, il faut créer deux fonctions spécialisées :
getDate() qui retourne la date
getHour() qui retourne l'heure
Pour avoir le tout, il suffit d'appeler les deux fonctions getDate()+" "+getHour()

Il est préférable de retourner la valeur via le return de la fonction et de traiter son retour pour l'afficher dans la fonction afficher()

Il faut aussi éviter pour une meilleure lisibilité de nommer un élément HTML comme une fonction (ici date_heure)

J'ai fait le script rapidement :
https://www.toutjavascript.com/user/getdate.html
TJS : 25 ans et mon livre Tout JavaScript chez Dunod
https://www.toutjavascript.com/livre/index.php

Horace
Messages : 10
Enregistré le : 29 avr. 2019, 11:00

Re: Variables dans JS

Message par Horace » 04 juin 2019, 17:52

Merci !
Je vais m'y mettre ...
Pour les noms de variables, je n'ai pas choisi, c'est un exemple tout fait.
Bonne soirée
H.

Répondre