Objašnjene globalne varijable u JavaScript-u

Globalne varijable deklarirane su izvan funkcije radi pristupačnosti u cijelom programu, dok su lokalne varijable pohranjene u funkciji koja se koristi varza upotrebu samo unutar opsega te funkcije. Ako promenljivu deklarirate bez upotrebe var, čak i ako je unutar funkcije, ona će se i dalje smatrati globalnom:

var x = 5; // global function someThing(y) { var z = x + y; console.log(z); } function someThing(y) { x = 5; // still global! var z = x + y; console.log(z); } function someThing(y) { var x = 5; // local var z = x + y; console.log(z); }

Globalna varijabla također je objekt trenutnog opsega, poput prozora preglednika:

var dog = “Fluffy”; console.log(dog); // Fluffy; var dog = “Fluffy”; console.log(window.dog); // Fluffy

Najbolja je praksa minimizirati globalne varijable. Budući da se varijabli može pristupiti bilo gdje u programu, one mogu uzrokovati neobično ponašanje.

Reference:

  • var -Javascript | MDN
  • Ne znate JavaScript: Opsezi i zatvaranja

Koja je razlika između globalne var i window.variable u javascriptu?

Opseg JavaScript varijabli je globalni ili lokalni. Globalne varijable deklarirane su IZVAN funkcije i njena vrijednost je dostupna / promjenjiva u cijelom programu.

Uvijek biste trebali koristiti var da biste deklarirali svoje varijable (da biste ih napravili lokalno), inače će se instalirati GLOBALNO

Pripazite na globalne varijable jer su rizične. Većinu vremena trebali biste se služiti zatvaračima kako biste deklarirali svoje varijable. Primjer:

(function(){ var myVar = true; })();

Više informacija:

  • Vizualni vodič za definicije i opseg JavaScript varijabli
  • Uvod u definicije JavaScript varijabli i podizanje