IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Variable et changement de variable


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Avatar de trx337
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Décembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2015
    Messages : 74
    Billets dans le blog
    1
    Par défaut Variable et changement de variable
    Bonjour
    Je pense que let et var forme deux variables différentes : exemple
    let n = 14;
    var n= 14;

    Si maintenant on veut changer n , il faut écrire
    n=15 ; et pas let n = 15;
    Bref je m'y perd un peu .
    C'est un peu basique mais ce serait bien de rappeler les regles car j'ai longtemps cherché une erreur que j'ai finalement résolu.

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2022
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2022
    Messages : 310
    Par défaut
    Bonjour,
    Var à une porté globale et est accessible partout.
    Alors que let est une variable locale,
    Donc quand vous faites let n = 15; Vous recréer probablement une nouvelle variable local dans un autre contexte que le précédent.
    Cdt
    Un problème sans solution est un problème mal posé. (Albert Einstein)

  3. #3
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 644
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 644
    Par défaut
    const, let et var permettent de déclarer des variables.
    il y a ensuite des différences de portée et de modification que vous pouvez lire sur les pages suivantes :
    https://developer.mozilla.org/fr/doc...et#description
    https://developer.mozilla.org/fr/doc...atements/const

  4. #4
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 489
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 489
    Par défaut
    perso, j'ai completement abandonee var

    si je devais resumer en 1 phrase simple : const assure l’origine de la variable, et let le scope de la variable
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre confirmé
    Avatar de trx337
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Décembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2015
    Messages : 74
    Billets dans le blog
    1
    Par défaut
    Merci à tous
    En fait si tu dis:
    const n = 2;
    n sera constamment égal à 2 , tu ne peux plus changer n.

    Pour ton scope , j'ai pas compris.
    Maintenant pourquoi utiliser let ?
    Est ce que
    n=7;
    ne serait il pas suffisant ?
    Puis si on l'a change , on écrit
    n=8;

  6. #6
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 489
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 489
    Par défaut
    Citation Envoyé par trx337 Voir le message
    En fait si tu dis:
    const n = 2;
    n sera constamment égal à 2 , tu ne peux plus changer n.
    oui & non
    tu pourras manipuler la variable, sans la "modifier" ton exemple n'est pas flagrant, car on ne peu pas faire grand chose avec une valeure primitive

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    const monObject = {a:'ok', b:'oui'};
    monObject = {}; // error tu ne peux pas re-assigner la variable
    // par contre, tu peux "modifier" la variable
    monObject.toto = 'tata'; // ok
    // monObject contient maintenant {a: 'ok', b: 'oui', toto: 'tata'}
    idem pour les tableaux, tu pourras les modifier (ajouter/supprimer des indexes), mais tu ne pourras pas le re-assigner
    si au debut de ton code, tu as : const datas = ['a', 'b', 'c'];, plus tard dans ton code, tu sais que tu peux aveuglement traiter datas comme un tableau
    Citation Envoyé par trx337 Voir le message
    Pour ton scope , j'ai pas compris.
    Maintenant pourquoi utiliser let ?
    Est ce que
    n=7;
    ne serait il pas suffisant ?
    Puis si on l'a change , on écrit
    n=8;
    un scope, c'est ce qui est entre accollades {...}
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // ... du code ...
    datas.forEach(data => {
      let i = 0; // la variable n'est accessible que dans le scope du forEach : entre les {...}
      if(true) {
        i++;
      }
      i = 'ok'; // tu peux re-affecter ce que tu veux (contrairement au const)
      console.log(i); // ok
    });
    console.log(i); // erreur, il ne connait pas i
    j'espere que c'est un peu plus clair :/
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  7. #7
    Membre confirmé
    Avatar de trx337
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Décembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2015
    Messages : 74
    Billets dans le blog
    1
    Par défaut
    Oui merci.

Discussions similaires

  1. Requête avec variable incrémentée sur changement de clé.
    Par souellet dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/09/2005, 22h47
  2. Changement de variable
    Par Pchiter dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/08/2005, 14h26
  3. [Tableau][matrices]changement d'index et variables variables
    Par The Wretched dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 18/04/2005, 10h01
  4. Réponses: 6
    Dernier message: 14/02/2005, 11h53
  5. Intercepter le changement de valeur d'une variable
    Par Captain_JS dans le forum C++Builder
    Réponses: 5
    Dernier message: 07/01/2005, 08h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo