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 :

Variables globales en javascript


Sujet :

JavaScript

  1. #1
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    75
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 75
    Par d�faut Variables globales en javascript
    Bonjour,

    J'ai un probl�me de variables :

    En fait j'ai un fichier JS (main.js) qui va avoir besoin de variables pr�sentes dans d'autres fichiers .js (var1.js , var2.js, var3.js, etc ...)

    exemple main.js :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    items: [login,
    	                var1,
    	                var2,
    	                var3
    	        ]

    exemple var1. js :


    voil� je s�che

    merci d'avance,

    link_915

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par link_915 Voir le message
    voil� je s�che
    A quel niveau ?

    Aucun probl�me sur le principe d'acc�der � des variables d�finies dans des fichiers s�par�s. Quel est le probl�me observ� ?

  3. #3
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    items: [login,
    	                var1,
    	                var2,
    	                var3
    	        ]
    au depart c'est pas du js ...
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  4. #4
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Mouais... tu pourrais essayer d'�tre un peu plus clair pour d�crire ton probl�me...

    Alors si je suppose que tu d�clares items comme un tableau dans un objet, j'esp�re que tu n'esp�re pas que
    va r�f�rencer la valeur du m�me nom dans le tableau...

    En tout �tat de cause, item (qui est fort maladroit comme nom de propri�t� puisque c'est aussi un mot cl� du langage) est tr�s probablement erron� puisque dans un tableau, il faut passer des valeurs, or toi tu passes des noms inconnus de JavaScript.
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  5. #5
    Expert confirm�
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par d�faut
    Moi je veux voir l'objet qui est autour de item.

    Citation Envoy� par Bovino Voir le message
    item (qui est fort maladroit comme nom de propri�t� puisque c'est aussi un mot cl� du langage)
    item, un mot-cl� de JS ? Tu dis �a parce que la balise code le colore en bleu ?
    La FAQ JavaScript � Les cours JavaScript
    Touche F12 = la console → l�outil indispensable pour d�velopper en JavaScript !

  6. #6
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par Watilin Voir le message
    Moi je veux voir l'objet qui est autour de item.


    item, un mot-cl� de JS ? Tu dis �a parce que la balise code le colore en bleu ?
    Bon, y'a bien NodeList.item ou plus g�n�ralement HTMLCollection.item, mais comme mot r�serv�, non, en effet D'ailleurs, pourquoi est-ce que la coloration le mentionne en bleu au fait, j'avais jamais remarqu� ?

  7. #7
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    item est une m�thode native du DOM JavaScript (toutes les collections et le enumerables), �a en fait donc un mot cl� du langage...
    J'imagine que s'il �tait question d'une variable alert par exemple, il y aurait plus de consensus sur le fait que c'est maladroit, pourtant, alert est aussi une m�thode de l'objet window.
    Alors utiliser ce genre de nommage est maladroit, pas interdit. Maladroit parce que c'est potentiellement source de confusion, pour la maintenance du code bien s�r, mais aussi dans certains cas pour JavaScript.

    @Romain : tu auras not� que j'ai bien dit : "qui est fort maladroit comme nom de propri�t� puisque c'est aussi un mot cl� du langage" et non "qui est interdit comme nom car c'est un mot r�serv� du langage".
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  8. #8
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Citation Envoy� par Bovino
    Alors utiliser ce genre de nommage est maladroit, pas interdit. Maladroit parce que c'est potentiellement source de confusion, pour la maintenance du code bien s�r, mais aussi dans certains cas pour JavaScript.
    d'autant que l'on peut souvent trouver un mot en fran�ais, c'est plus facile pour nous on poss�de un dictionnaire tr�s riche, levant toute ambigu�t�.

  9. #9
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    On est tous bien d'accord sur l'emploi maladroit de ce type de mots-cl�s ^^ pour ce qui est des "mots r�serv�s", au temps pour moi, ce n'est pas la m�me chose

    Et de toutes fa�ons, comme dit NoSmoking, le vocabulaire francais permet d'�viter la plupart de ces conflits potentiels

  10. #10
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par Bovino Voir le message
    item est une m�thode native du DOM JavaScript (toutes les collections et le enumerables), �a en fait donc un mot cl� du langage...

    @Romain : tu auras not� que j'ai bien dit : "qui est fort maladroit comme nom de propri�t� puisque c'est aussi un mot cl� du langage" et non "qui est interdit comme nom car c'est un mot r�serv� du langage".

    Quand est-ce que tu comprendras que ce que tu dis n'a pas de sens, s�pare un moment le DOM du Javascript, le JS peut-�tre utilis� sans DOM.
    Et quand tu codes un objet en JS tu as le droit d"utiliser les noms de propri�t�s que tu veux sur un objet et ce n'est certainement pas maladroit.

    si tu t'amuses � venir rajouter des propri�t�s sur un objet du DOM, alors que cette propri�t� est native du DOM, l� oui c'est n'importe quoi. Mais venir rabacher � chaque fois que l'utilisation d'un nom de propri�t� dans un objet/classe purement js est maladroit parce qu'il existe dans un objet X ou Y du DOM, c'est aussi du grand n'importe quoi

  11. #11
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut

    J'avoue que tes arguments sont impressionnants.
    s�pare un moment le DOM du Javascript
    je veux bien, mais vu que la quasi totalit� des questions pos�es sur ce forum sont li�es au JavaScript cot� navigateur, �a va devenir compliqu� d'y r�pondre
    le JS peut-�tre utilis� sans DOM
    tu aurais un exemple concret dans le cadre d'une page Web ?
    Quand est-ce que tu comprendras que ce que tu dis n'a pas de sens
    Ben, quand tu arr�teras de sortir des f�ves comme �a
    Dans le cadre d'une page Web, l'interface DOM est pleinement du JavaScript, ne t'en d�plaise, tout comme la gestion des bases de donn�es en PHP est du PHP bien qu'il soit possible d'utiliser des bases de donn�es sans PHP ou PHP sans extensions sur les bases de donn�es !
    JavaScript �tant un langage de script, son vocabulaire est compl�t� par l'interface que lui offre son environnement.

    Ensuite, pour ce qui est du nommage, je peux bien comprendre que tu ne sois pas d'accord sur ce qui est maladroit ou non, mais si on suit ta logique, tout ce qui n'est pas interdit n'est pas maladroit, ce qui autorise des noms de propri�t�s comme "class" ou m�me "un nom de propri�t� bien pens�" qui, bien qu'autoris�s, me semblent maladroits. Et comme j'ai tendance � appliquer les m�mes r�gles � tous les types de nommage (variables, fonctions, param�tres, propri�t�s), je consid�re un nom comme setTimeout ou alert maladroit (ce ne sont pourtant que des noms de m�thodes de l'objet DOM window), je consid�re au m�me titre maladroit d'utiliser comme noms n'importe quel nom de propri�t� ou de m�thode natif du langage dans le contexte d'ex�cution.
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  12. #12
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par dukej Voir le message
    *facepalm*
    [...] Mais venir rabacher � chaque fois que l'utilisation d'un nom de propri�t� dans un objet/classe purement js est maladroit parce qu'il existe dans un objet X ou Y du DOM, c'est aussi du grand n'importe quoi
    Range ton flingue, cowboy, tu t'es gourr� de cible

    Ni dans ce post ni dans d'autres � ma connaissance Bovino ne s'est fait le censeur born� des pratiques des autres : il a bien dit "maladroit", et il a argument�. Libre � chacun d'en tirer son propre jugement, de contre-argumenter, etc.

    Et dis-moi au fait, quel est l'int�r�t d'utiliser un des tr�s tr�s tr�s rares mots d�j� utilis�s dans le DOM pour le choix d'un identificateur (DOM ou hors-DOM d'ailleurs) ?

  13. #13
    Expert confirm�
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par d�faut
    Moi �a m'arrive d'utiliser item comme nom de variable quand j'it�re sur une nodeList. Ce n'est pas d�rangeant dans le sens o� la propri�t� item a un cadre bien pr�cis. Il y a peu de risque de mauvaises surprises.

    Dans le cas pr�sent, je parie que c'est du JSON, et que donc �a vient d'un serveur qui a de fortes chances de ne pas tourner en JS. De plus, c'est possible que le code qui g�n�re le JSON ait �t� �crit par quelqu'un d'autre que link_915, du coup ce serait pas lui qui d�cide�
    La FAQ JavaScript � Les cours JavaScript
    Touche F12 = la console → l�outil indispensable pour d�velopper en JavaScript !

  14. #14
    Expert confirm�
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 61
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : Urbaniste
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par d�faut
    bon apr�s tout �a si nous revenions � la question de d�part

    si j'ai bien compris tu as 4 script dont 1 main.js utilise des variables des autres

    il n'y a pas de pb � faire cela.
    il suffit de s'assurer que les 3 premier script sont correctement ex�cut� avant d'ex�cuter le dernier main.js.

    il faut donc s'assurer des cycles d'ex�cution.
    si la variable est d�finie dans le script directement est que celui-ci n'a pas d'attribut defer alors la variable doit exister � la fin du script
    si l'attribut defer est pr�sent la variable n'existera qu'apr�s le chargement complet du DOM et sa fermeture.
    si la definition est dans un gestionnaire d'�v�nement
    il est n�cessaire de s'assurer que l'�v�nement aura lieu avant l'ex�cution du code de main.js.

    Je n'aime pas les variables globales et g�n�ralement je n'en ai qu'une
    dans ton cas tu peux cr�er le tableau d'abord
    chaque script ajoute ensuite des valeurs dans le tableau
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    myNameSpace= {items: ['login']
    var1.js
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    myNameSpace.items.push(3);
    cela �vite de cr�er des variables pour ensuite mettre leur valeur dans un tableau.
    var1.jsmain.js
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    myNameSpace={items: [
      'login',
      var1
    ]
    quant � l'utilisation des mots comme items je ne les utilise dans mes propres objets que s'il ont la m�me s�mantiques que dans les objets standards. je ne mettrais l'attribut length � mon objet que s'il repr�sente la longueur courante d'une collection. ce qui implique que l'attribut doit �tre maintenu correct par l'objet. si je ne peux atteindre cette sp�cification je n'utilise pas l'attribut length. s'il ne s'agit pas du nombre d'�l�ment d'une collection je cherche un nom plus appropri�, s'il s'agit bien de cette taille mais que je ne peux garantir qu'il est maintenue alors je pr�f�re le calculer et je ne mets pas l'attribut length mais la m�thode getLength
    mon but est qu'il n'y ai aucune ambigu�t� par rapport � ce qu'un d�velopper js connais d�j� dans le langage et les objets standards.

    A+JYT

  15. #15
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par Bovino Voir le message

    J'avoue que tes arguments sont impressionnants.

    je veux bien, mais vu que la quasi totalit� des questions pos�es sur ce forum sont li�es au JavaScript cot� navigateur, �a va devenir compliqu� d'y r�pondre

    tu aurais un exemple concret dans le cadre d'une page Web ?

    Ben, quand tu arr�teras de sortir des f�ves comme �a
    Dans le cadre d'une page Web, l'interface DOM est pleinement du JavaScript, ne t'en d�plaise, tout comme la gestion des bases de donn�es en PHP est du PHP bien qu'il soit possible d'utiliser des bases de donn�es sans PHP ou PHP sans extensions sur les bases de donn�es !
    JavaScript �tant un langage de script, son vocabulaire est compl�t� par l'interface que lui offre son environnement.

    Ensuite, pour ce qui est du nommage, je peux bien comprendre que tu ne sois pas d'accord sur ce qui est maladroit ou non, mais si on suit ta logique, tout ce qui n'est pas interdit n'est pas maladroit, ce qui autorise des noms de propri�t�s comme "class" ou m�me "un nom de propri�t� bien pens�" qui, bien qu'autoris�s, me semblent maladroits. Et comme j'ai tendance � appliquer les m�mes r�gles � tous les types de nommage (variables, fonctions, param�tres, propri�t�s), je consid�re un nom comme setTimeout ou alert maladroit (ce ne sont pourtant que des noms de m�thodes de l'objet DOM window), je consid�re au m�me titre maladroit d'utiliser comme noms n'importe quel nom de propri�t� ou de m�thode natif du langage dans le contexte d'ex�cution.
    D�cid�ment on ne sera jamais d'accord, mais tu fais fausse route en venant critiquer le terme "item" dans un objet JS et en disant qu'il est utilis� par le DOM dans une collection. Mais on s'en cogne puisqu'il sont totalement diff�rents et que item n'est pas un mot cl�.

    Ce qui serait g�nant serait de faire :
    obj : {
    'class' : 1,
    'parseInt' : 2
    }
    etc...
    L� oui tu utilises des mots cl� du langage et ce n'est pas trop conseill�. Mais venir rabacher le m�me message pour 2 choses compl�tement diff�rentes, c'est un peu d�plac�.

  16. #16
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    75
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 75
    Par d�faut
    Bonjour, merci de votre aide.

    le probl�me est r�solu, aucun probl�me pour utiliser des variables dans des fichiers s�par�s effectivement, mon probl�me venait de la g�n�ration de ces fichiers javascript en fin de compte (via java).

    Du coup je comprenais vraiment pas pourquoi �a ne voulait pas fonctionner et voil� pourquoi je s�chait.

    merci encore,

    link_915

  17. #17
    Expert confirm�
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 61
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : Urbaniste
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par d�faut
    je reviens sur les variables globales
    pour faciliter la maintenance et am�liorer les perfs

    j'�vite tout ce qui est global, et tous ce qui est js g�n�r� dynamiquement.

    par principe (donc � ne pas suivre dans l'absolu mais � r�fl�chir avant d'agir) le javascript est dans un fichier statique est ne contient pas de donn�es.

    la partie dynamique du site g�n�re des data et jamais de fonctions.

    pour �viter les globales voil� comment je fais.
    un premier script statique qui d�finit un objet (qui vas servir d'espace de nom) dans celui-ci je mais les �l�ments de base de mon appli.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    myApp={
      'name':'sampleApp',
      ...
    }
    ensuite un script dynamique vient ajouter les �l�ments dynamiques de l'application.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    myApp.user={
      'name':'<* echo userName *>',
      'lang':'<* echo userLanguage *>',
      ...
    }
    si je dois d�finir diff�rement une fonction ou une m�thode en fonction de ce que fait le serveur je ne cr�� pas la fonction dynamiquement avec le langage serveur mais je charge un script statique ou un autre qui qui chacun d'eux contient la d�finition des diff�rents cas. cela m'arrive tr�s rarement. j'ai souvent rencontr� la g�n�ration dynamique de fonction dans le cadre de l'internationalisation. qui va formater la Date en fonction de la langue de l'utilisateur. dans ce genre de cas j'ai un fichier statique par langue et je charge le fichier de la langue. mieux je d�finit une seule fonction format qui prends en compte un pattern de format du coup la fonction n'est compil� qu'une fois par le poste client

    depuis que je fais ainsi je n'ai plus de pb de conflit de nom avec des script ext�rieurs le seul objet de mon des �tant myApp
    les scripts statiques sont toujours mis dans les caches (Webcontener JEE, frontal HTTP, Proxy, navigateur, moteur JS)
    question perf c'est incomparable. un js g�n�r� dynamiquement par le serveur suit le chemin complet ci dessus l'app du webcontener g�n�re le js qui traverse tout et comme il est dynamique il n'est pas mis en cache seul le moteur JS garde la version compil�. � l'appel suivant du m�me JS comme il est dynamique il reprends compl�tement le m�me chemin. et ce pour tous les utilisateurs.

    s'il est statique le premier utilisateur � l'utiliser suit le chemin complet. mais � chaque �tape le script est mis en cache. un autre utilisateur du m�me sous r�seau n'ira le chercher que dans le proxy local un utilisateur d'un autre r�seau ira le chercher dans le cache du frontal et l'utilisateur local sur le m�me browser ira le chercher dans le cache du navigateur et s'il recharge la page le moteur JS ne le rechargera pas si ses d�pendances n'ont pas chang�.

    A+JYT

  18. #18
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    75
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 75
    Par d�faut
    Bonjour, je r�ouvre le thread car je me suis rendu compte que tout ne fonctionnait pas comme je le voulais

    En fait, j'ai un fichier index.js que j'ai du �clater en plusieurs fichiers.js

    Ces fichiers.js repr�sentants chaque item � inserer dans le tableau si l'utilisateur les a choisis.

    Le probl�me est tel que mon application se lance, avec mes variables entr�es dans le tableau.

    main.js :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    myNameSpace={items: [
      item1,
      item2,
      item3
    ]
    En revanche, quand je souhaite faire dans item1.js

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    myNameSpace.setActiveItem(item2)
    j'ai une erreur m'indiquant que item2 est ind�fini. Si quelqu'un � une id�e

    merci.

  19. #19
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Citation Envoy� par link_915
    j'ai une erreur m'indiquant que item1 est ind�fini. Si quelqu'un � une id�e
    Euh... j'imagine que tu parles de item2 plut�t
    Si c'est le cas, c'est normal... item2 est une propri�t� de myNameSpace or tu l'utilises comme si c'�tait une variable...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    myNameSpace.setActiveItem(myNameSpace.item2)
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  20. #20
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    75
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 75
    Par d�faut
    Oui, je voulais dire item2 (j'ai �dit� mon pr�c�dent message).

    J'ai r�ussi � r�soudre mon probl�me en mettant onReady: devant l'appel.

    merci.

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 2 12 Derni�reDerni�re

Discussions similaires

  1. D�claration des variables globales en javascript non recommand�e
    Par DarkPoster14 dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 15/01/2013, 12h31
  2. Cr�er une variable globale en javascript
    Par Med_Hamma dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 18/06/2012, 08h29
  3. variable globale en javascript
    Par mysystm dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 25/08/2008, 14h34
  4. variable globale, en javascript.
    Par Anonymus dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 06/02/2007, 17h32
  5. [javascript] Probl�me variable globale !!!!
    Par LE NEINDRE dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 08/08/2005, 16h41

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