Sobes.tech
Intern

JavaScript-də hansı funksiyalar mövcuddur?

sobes.tech Süni İntellekt

AI-dan cavab

JavaScript-də aşağıdakı növ funksiyalar mövcuddur:

  • Funksiya bəyanatları (Function Declarations): Funksiya təyin etmək üçün əsas sintaksis. Yüksəklənirlər (hoisted) tərtib zamanı.

    function sayHello() {
      // Funksiya bədəni
      console.log("Salam!");
    }
    
  • Funksiya ifadələri (Function Expressions): Funksiya dəyişənə təyin edilir. Yüksəklənmir. Adlı və ya adı olmayan ola bilər.

    const greetUser = function(name) {
      // Funksiya bədəni
      console.log(`Salam, ${name}!`);
    };
    
  • Ox funksiyaları (Arrow Functions): ES6 ilə təqdim olunan daha qısa sintaksis. this ilə davranış xüsusiyyətləri var.

    const add = (a, b) => a + b;
    
  • Obyekt metodları (Object Methods): Obyektin xüsusiyyəti kimi təyin olunan funksiyalar.

    const user = {
      name: "İvan",
      sayName: function() {
        console.log(this.name);
      }
    };
    
  • Generator funksiyaları (Generator Functions): yield istifadə edərək dayandıra və davam etdirə bilən funksiyalar. İterator qaytarır.

    function* counter() {
      let i = 0;
      while (true) {
        yield i++;
      }
    }
    
  • Asinxron funksiyalar (Async Functions): Promis ilə işləyən və await istifadə edərək promisların tamamlanmasını gözləyən funksiyalar.

    async function fetchData() {
      const response = await fetch("https://api.example.com/data");
      const data = await response.json();
      return data;
    }
    
  • Konstruktor funksiyaları (Constructor Functions): new operatoru ilə istifadə edilən və obyektlər yaradan funksiyalar. Klassların yaranmasından əvvəlki ənənəvi yanaşma.

    function Person(name, age) {
      this.name = name;
      this.age = age;
    }
    
    const person1 = new Person("Petr", 30);
    
  • Callback funksiyaları (Callback Functions): Başqa funksiyaya arqument kimi verilən və müəyyən vaxtda işlədilən funksiyalar.

    function processArray(arr, callback) {
      for (let i = 0; i < arr.length; i++) {
        callback(arr[i]);
      }
    }
    
    processArray([1, 2, 3], function(item) {
      console.log(item * 2);
    });
    
  • İFEE (Dərhal çağırılan funksiyalar ifadələri - Immediately Invoked Function Expressions): Təyin edildikdən dərhal sonra işlədilən funksiyalar. Lokal sahə yaratmaq üçün istifadə olunur.

    (function() {
      // Lokal kod
      const secret = "sir";
      console.log(secret);
    })();
    

Hər bir funksiya növünün öz sintaksis xüsusiyyətləri, sahəsi (this) və istifadə ssenariləri var.