CodeGym /Kurslar /Frontend SELF AZ /Görünürlük sahələri

Görünürlük sahələri

Frontend SELF AZ
Səviyyə , Dərs
Mövcuddur

5.1 Qlobal Görünürlük Sahəsi

Görünürlük sahələri (scopes), proqramın müxtəlif hissələrində dəyişənlərə və funksiyalara giriş imkanını müəyyən edir. JavaScript-də üç əsas görünürlük sahəsi var: qlobal, lokal və blok. Bu görünürlük sahələrini anlamaq, məlumatları effektiv idarə etmək və kodda səhvlərin qarşısını almaq üçün vacibdir.

Qlobal görünürlük sahəsi, hər hansı bir funksiyanın və ya kod blokunun xaricində elan edilmiş bütün dəyişənləri və funksiyaları əhatə edir. Bu dəyişənlər və funksiyalar kodun istənilən yerindən əlçatandır.

Nümunə 1: Qlobal dəyişənlərin elan edilməsi

JavaScript
    
      var globalVar = 'Mən qlobal dəyişənəm';

      function showGlobalVar() {
        console.log(globalVar); // Qlobal dəyişənə giriş
      }
      showGlobalVar(); // Ekrana çıxaracaq: Mən qlobal dəyişənəm

      console.log(globalVar); // Qlobal dəyişənə giriş
    
  

Nümunə 2: Qlobal funksiyalar

Bu nümunədə globalVar dəyişəni və globalFunction() funksiyası qlobal görünürlük sahəsində elan olunub və kodun istənilən yerindən buna giriş mümkündür.

JavaScript
    
      function globalFunction() {
        return 'Mən qlobal funksiyam';
      }

      console.log(globalFunction()); // Ekrana çıxaracaq: Mən qlobal funksiyam
    
  

5.2 Lokal görünmə sahəsi

Lokal görünmə sahəsi funksiyanın daxilində elan olunmuş dəyişənləri və funksiyaları özündə birləşdirir. Bu dəyişənlər və funksiyalar yalnız həmin funksiyanın daxilində əlçatandır və onun hüdudlarından kənarda əlçatan deyil.

Nümunə 3: Lokal dəyişənlərin elanı

Bu nümunədə localVar dəyişəni localScopeExample() funksiyasının daxilində elan olunub və həmin funksiyadan kənarda əlçatan deyil:

JavaScript
    
      function localScopeExample() {
        var localVar = 'Mən lokal dəyişənəm';
        console.log(localVar); // Lokal dəyişənə giriş
      }

      localScopeExample(); // Çıxış: Mən lokal dəyişənəm

      console.log(localVar); // Xəta: localVar is not defined
    
  

Nümunə 4: Lokal funksiyalar

Bu nümunədə innerFunction() funksiyası outerFunction() funksiyasının daxilində elan olunub və outerFunction()-dan kənarda əlçatan deyil:

JavaScript
    
      function outerFunction() {
        function innerFunction() {
          return 'Mən lokal funksiyam';
        }
        console.log(innerFunction()); // Lokal funksiyaya giriş
      }

      outerFunction(); // Çıxış: Mən lokal funksiyam

      console.log(innerFunction()); // Xəta: innerFunction is not defined
    
  

5.3 Blok görünürlük sahəsi

Blok görünürlük sahəsi letconst ilə blok içində elan olunmuş dəyişənləri əhatə edir, və bu dəyişənlər yalnız həmin blok daxilində əlçatandır, blok xaricində isə əlçatan deyil.

Nümunə 5: let ilə dəyişənlərin elan edilməsi

Bu nümunədə blockVar dəyişəni if blokunun içində elan edilib və blokun xaricində əlçatan deyil:

JavaScript
    
      if (true) {
        let blockVar = 'Mən blok səviyyəli dəyişənəm';
        console.log(blockVar); // Blok dəyişəninə giriş
      }

      console.log(blockVar); // Xəta: blockVar təyin edilməyib
    
  

Nümunə 6: const ilə dəyişənlərin elan edilməsi

Bu nümunədə i dəyişəni for blokunun içində elan edilib və blokun xaricində əlçatan deyil:

JavaScript
    
      for (const i = 0; i < 3; i++) {
        console.log(i); // Blok dəyişəninə giriş
      }

      console.log(i); // Xəta: i təyin edilməyib
    
  

Blok görünürlük sahəsinin xüsusiyyətləri

Nümunə 7: Daxili bloklar

Bu nümunədə innerVar dəyişəni yalnız daxili blokda əlçatandır, outerVar dəyişəni isə həm xarici, həm də daxili blokda əlçatandır:

JavaScript
    
      if (true) {
        let outerVar = 'Mən xarici blokda yerləşirəm';

        if (true) {
          let innerVar = 'Mən daxili blokda yerləşirəm';

          console.log(outerVar); // Xarici blok dəyişəninə giriş
          console.log(innerVar); // Daxili blok dəyişəninə giriş
        }

        console.log(outerVar); // Xarici blok dəyişəninə giriş
        console.log(innerVar); // Xəta: innerVar təyin edilməyib
      }
    
  

5.4 Müxtəlif görünmə areallarının qarşılıqlı əlaqəsi

Nümunə 8: Qlobal və lokal görünmə arealının qarşılıqlı əlaqəsi

Bu nümunədə scopeExample() funksiyası qlobal dəyişən globalVar və öz lokal dəyişəni localVar-a çıxış edə bilir:

JavaScript
    
      var globalVar = 'Mən qlobal dəyişənəm';

      function scopeExample() {
        var localVar = 'Mən lokal dəyişənəm';

        console.log(globalVar); // Qlobal dəyişənə çıxış
        console.log(localVar);  // Lokal dəyişənə çıxış
      }

      scopeExample(); // Çap edəcək: Mən qlobal dəyişənəm
                      // Mən lokal dəyişənəm

      console.log(globalVar); // Qlobal dəyişənə çıxış
      console.log(localVar);  // Xəta: localVar təyin edilməyib
    
  

Nümunə 9: Görünmə arealları və ox funksiyası

Bu nümunədə ox funksiyası arrowFunction() qlobal dəyişən globalVar və öz lokal dəyişəni localVar-a çıxış edə bilir:

JavaScript
    
      let globalVar = 'Mən qlobal dəyişənəm';

      const arrowFunction = () => {
        let localVar = 'Mən ox funksiyasında lokal dəyişənəm';

        console.log(globalVar); // Qlobal dəyişənə çıxış
        console.log(localVar);  // Lokal dəyişənə çıxış
      };

      arrowFunction(); // Çap edəcək: Mən qlobal dəyişənəm
                       // Mən ox funksiyasında lokal dəyişənəm

      console.log(globalVar); // Qlobal dəyişənə çıxış
      console.log(localVar);  // Xəta: localVar təyin edilməyib
    
  
1
Опрос
Funksiyalar,  35 уровень,  4 лекция
недоступен
Funksiyalar
Funksiyalar
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION