Sobes.tech
Junior

Funksiyaların yaradılması üçün hansı üsulları bilirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

JavaScript-də funksiyaları yaratmanın bir neçə yolu var, hər biri öz xüsusiyyətləri ilə:

  1. Funksiya bəyanatları: Klassik funksiya yaratma üsuludur. Onlar (hoisted) yuxarıya qaldırılır və bu, onları bəyan etmədən əvvəl çağırmağa imkan verir.

    // function istifadə edərək funksiya bəyanatı
    function greet(name) {
      return "Salam, " + name + "!";
    }
    
  2. Funksiya ifadələri: Funksiya ifadənin bir hissəsi kimi yaradılır və dəyişənə təyin edilir. Onlar (not hoisted) eyni şəkildə qaldırılmır.

    // Funksiya ifadəsi
    const greet = function(name) {
      return "Salam, " + name + "!";
    };
    
  3. Ox funksiyaları (Arrow Functions): Funksiya ifadələri üçün qısa sintaksis formasıdır. Onlar this və öz arqumentləri (arguments) olmaması ilə klassik funksiyalardan fərqlənir.

    // Ox funksiyası
    const greet = (name) => {
      return "Salam, " + name + "!";
    };
    
    // Qısa formada, dolayı dönüş ilə
    const greetShort = (name) => "Salam, " + name + "!";
    
  4. Konstruktor funksiyaları: Obiektlər yaratmaq üçün istifadə olunur. new açar sözü ilə çağırılır.

    // Konstruktor funksiyası
    function Person(name, age) {
      this.name = name;
      this.age = age;
    }
    
    // Konstruktor ilə nümunə yaratmaq
    const person1 = new Person("Aleksei", 30);
    
  5. Sınıf metodları: Sınıflarda (sintaktik şəkər prototip irsiyyət üzərində) funksiyalar metodlar kimi müəyyən edilir.

    // Sınıf ilə metod bəyanatı
    class Greeter {
      greet(name) {
        return "Salam, " + name + "!";
      }
    }
    
    // Sınıf nümunəsi yaratmaq və metodu çağırmaq
    const greeter = new Greeter();
    const message = greeter.greet("Dünya");
    
  6. Dərhal çağırılan funksiyalar ifadələri (IIFE): Yaratdıqdan dərhal sonra icra olunan funksiya ifadəsi. Lokal sahə yaratmaq üçün istifadə olunur.

    // IIFE
    (function() {
      // IIFE daxilində kod
      console.log("Bu funksiya dərhal icra olunur!");
    })();
    

Hər bir metodun öz üstünlükləri və çatışmazlıqları var və seçim konkret tapşırıq və kontekstdən asılıdır.