⊗jsPmFVGb 218 of 505 menu

JavaScript-de funksiýalaryň global üýtgeýänleri

JavaScript-de (beýle dillerde köplenç şeýle däl) funksiýanyň daşynda kesgitlenen üýtgeýänler şol funksiýanyň içinde görüner. Şeýdip atlandyrylýan üýtgeýänler global diýilýär. Mysala garalyň:

let num = 1; // funksiýanyň daşyndaky üýtgeýän function func() { console.log(num); // num üýtgeýjisi funksiýanyň içinde görünýär } func(); // 1-ni çykarar

Aslynda, üýtgeýän funksiýanyň kesgitlenmeginden däl-de, ýöne onuň çagyrylmagyna çenli kesgitlenmelidir:

function func() { console.log(num); } let num = 1; // funksiýanyň daşyndaky üýtgeýän func(); // 1-ni çykarar

Eger üýtgeýjiniň bahasyny üýtgetseňiz we onuň yzysüre her gezek funksiýany çagyrsaňyz - console.log her gezek dürli netijeleri çykarar:

function func() { console.log(num); } let num; // üýtgeýjini yglan edeliň num = 1; // bahany 1-e belläliň func(); // 1-ni çykarar num = 2; // bahany 2-e belläliň func(); // 2-ni çykarar

Eger bizde birnäçe funksiýa bar bolsa, onda global üýtgeýän şol funksiýalaryň her birinde elýeterli bolar:

function func1() { console.log(num); } function func2() { console.log(num); } let num = 1; func1(); // 1-ni çykarar func2(); // 1-ni çykarar

Eger funksiýalaryň birinde global üýtgeýän bilen üýtgeşmeler ýüze çyksa, onda bu üýtgeýän şol üýtgeýjini ulanýan ähli funksiýalarda üýtgerer:

function func1() { console.log(num); num++; // global üýtgeýjini üýtgedýäris } function func2() { console.log(num); } let num = 1; func1(); // 1-ni çykarar func2(); // 2-ni çykarar

Funksiýalaryň haýsy biri bolsa-da global üýtgeýjini aňsatlyk bilen üýtgedip bilýändigi sebäpli, olaryň ulanmagy kyn ýakalanýan ýalňyşlyklaryň ösüş ýeri bolup durýar. Bu sebäpli, skriptde global üýtgeýänleri ulanyşy iň aza çenli azaltmaly. Arzuw edilýän ýagdaý, olaryň hiç biri ýok bolmaly ýa-da iň az mukdary bolmaly.

Kody başlatmazdan, konsolde näme çykajagyny kesgitläň:

let num = 1; function func() { console.log(num); } func();

Kody başlatmazdan, konsolde näme çykajagyny kesgitläň:

let num = 1; function func() { console.log(num); } num = 2; func();

Kody başlatmazdan, konsolde näme çykajagyny kesgitläň:

function func() { console.log(num); } let num; num = 1; func(); num = 2; func();
Türkmen
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkçeЎзбекOʻzbekTiếng Việt
Biz sahypanyň işlemegi, analitika we şahsyýetleşdirmek üçin cookie ulanýarys. Maglumatlaryň işlenişi Gizlinlik syýasaty boýunça amala aşyrylýar.
hemmesini kabul et sazlamak ret et