2009-12-11 4 views
0

Je prends la maintenance d'un projet et je lis le code:
Je vois deux méthodes de déclaration de variables. Quelqu'un peut-il expliquer ce que signifie la différence entre la première et la deuxième ligne? Pour moi, je suis en train de lire que dans javascript, le mot-clé var est optionnel. dans la première ligne, ils ont déclaré deux nouvelles variables et les ont initialisées. Dans la deuxième ligne, ils ont déclaré deux nouveaux varialbes mais ne les ont pas initialisés. Devrais-je prendre quelque chose de plus?Quelle est la différence de delaration variable ici?

aURL = ""; msgNb = 1; 
var mode, param, counter; 
+0

N'est-ce pas JavaScript uniquement? jQuery n'a pas son propre langage, n'est-ce pas? –

+1

Je suis nouveau sur le web dev, donc oui, cela pourrait être juste une question javascript. Voilà ce que je suis ici pour en apprendre davantage sur – MedicineMan

Répondre

9

À moins que toutes ces variables sont à l'intérieur d'une fonction, ils sont tous globals, les deux premières sont des missions que je pense parce qu'ils ont déjà été déclarés, sinon il peut être ramené à

var aURL = '', 
    msgNb = 1, 
    mode, 
    param, 
    counter; 

Le ceux non affectés ont une valeur indéfinie par défaut. Vous devez toujours utiliser le mot-clé var pour conserver la variable dans la même portée de fonction et ne pas forcer la variable à devenir implicite globale. Dans le cas contraire, vous risquez de rencontrer des problèmes de nom et d'affectation de variables en double.

3

Si vous n'utilisez pas var, vous utilisez (ou créez) une variable depuis une portée «parente», jusqu'à être globale si elle ne trouve pas de variable locale à n'importe quelle portée.

3

Il ne s'agit pas d'un problème de "jquery", mais plutôt d'un problème JavaScript. Une variable sans le mot-clé "var" a une portée globale, c'est-à-dire qu'elle est visible à partir de toutes les méthodes, objets, etc ... Une var n'est visible que dans sa portée spécifique.

Questions connexes