Sobes.tech
Junior

Spread və rest operatorları arasındakı fərq nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Yayılma operatoru (...) təkrarlana bilən obyektləri (massivlər, sətirlər) ayrı-ayrı elementlərə genişləndirir və çox vaxt massivlərin surətini çıxarmaq, obyektləri birləşdirmək və ya funksiyalara arqumentlər ötürmək üçün istifadə olunur. Qalan elementləri bir arrayda toplayan operator (...) destrukturizasiya zamanı və ya funksiyaların tərifində arqumentləri toplamaq üçün istifadə olunur.

Yayılma istifadə nümunələri:

// Arrayin surətini çıxarmaq
const arr1 = [1, 2, 3];
const arr2 = [...arr1]; // arr2 = [1, 2, 3]

// Arrayləri birləşdirmək
const arr3 = [4, 5];
const combined = [...arr1, ...arr3]; // combined = [1, 2, 3, 4, 5]

// Funksiyaya arqument ötürmək
function sum(a, b, c) {
  return a + b + c;
}
const numbers = [1, 2, 3];
const result = sum(...numbers); // result = 6

Qalan elementləri toplamaq nümunələri:

// Array destrukturizasiyasında qalan elementləri toplamaq
const [first, ...restOfArray] = [1, 2, 3, 4]; // first = 1, restOfArray = [2, 3, 4]

// Funksiyada arqumentləri toplamaq
function logArguments(arg1, ...restArgs) {
  console.log(arg1); // ilk arqument
  console.log(restArgs); // qalan arqumentlərin arrayi
}
logArguments(1, 2, 3, 4); // 1 və [2, 3, 4] göstərəcək

Əsas fərq onların məqsədindədir: yayılma genişləndirir, qalanlar toplayır.