de Ashay Mandwarya ?️??

O introducere în sintaxa Spread în JavaScript

Ce este și de ce avem nevoie de el?

O introducere in sintaxa Spread in JavaScript
Fotografie de Anton Darius | @theSollers pe Unsplash

Sintaxa răspândirii a fost introdusă în specificația ES6 a JavaScript. De atunci s-a dovedit a fi o piesă valoroasă de cod care face codul curat și ușor de înțeles.

MDN definește la fel de:

Răspândiți sintaxa permite o extensie iterabilă, cum ar fi o expresie sau un șir, să fie extinsă în locuri unde sunt așteptate zero sau mai multe argumente (pentru apeluri de funcții) sau elemente (pentru literali de matrice) sau o expresie de obiect să fie extinsă în locuri unde zero sau mai multe sunt așteptate perechi de valori (pentru literele obiectelor).

Să fim de acord cu toții că definiția de mai sus este o mână și niciunul dintre noi nu a prins un cuvânt pe care încearcă să-l spună. Deci, să începem cu cele mai de bază lucruri despre sintaxa răspândirii.

  • Operatorul spread are doar 3 puncte ...
  • Poate fi folosit pe iterabile, cum ar fi o matrice sau un șir.
  • Extinde un element iterabil la elementele sale individuale
  • Poate furniza un apel funcțional cu o matrice (sau orice alt iterabil) în care se așteptau 0 sau mai multe argumente.

Exemplu

Fragmentul de mai jos conține o funcție numită sumă care așteaptă 3 argumente x, y și z. Avem un tablou cu 3 elemente și vrem să trecem elementele din tablou ca argumente pentru funcție.

O introducere in sintaxa Spread in JavaScript

Înainte de a fi introdus operatorul spread, acest lucru se făcea prin intermediul funcției de aplicare.

După introducerea operatorului spread, se poate face foarte simplu:

1612099985 626 O introducere in sintaxa Spread in JavaScript

După cum se poate observa din fragmentul de mai sus cu operatorul spread, nu trebuie să folosim funcția de aplicare. Acest lucru ne scutește de a scrie mai multe coduri.

Exemplul de mai sus oferă o idee foarte scurtă și scurtă despre operatorul spread. În primul rând, să intrăm în mai multe detalii cu privire la aceleași, și apoi vom vedea mai multe exemple.

Sintaxă

Operatorul de răspândire poate fi utilizat în mai multe moduri și scenarii, cum ar fi

  • Apeluri funcționale în interior
1612099986 307 O introducere in sintaxa Spread in JavaScript

Când este utilizat în scenariul de mai sus, se numește parametrul rest. Vom vedea exemple legate de aceasta în secțiunea de exemple.

  • Crearea / extinderea unui tablou / iterabil:
1612099986 975 O introducere in sintaxa Spread in JavaScript

Exemple

  • Ca odihnă

… este folosit ca argument pentru o funcție variadică. O funcție variadică este o funcție care poate avea un număr variabil de parametri.

1612099986 163 O introducere in sintaxa Spread in JavaScript

Aici, când returnăm argumente, vedem că ne recuperăm matricea pe care am trecut-o ca valori separate în apel. Acest lucru arată că operatorul de rest funcționează de fapt exact opus sintaxei spread. Se extinde și se condensează valoarea.

Un alt lucru de subliniat este că nu există un număr specific de parametri menționați în definiția funcției. Aceasta înseamnă să folosiți … funcția poate avea un număr de argumente. Nu este nevoie să specificăm parametrii în prealabil.

Acesta este în mod special un mod foarte flexibil de a primi argumente pentru o funcție pentru care numărul specific de argumente nu este determinat ca funcția Math.max și Math.min. Acestea sunt funcții variadice, deoarece numărul de intrări poate fi infinit pentru ele.

Înapoi la exemplu, pentru a obține suma tuturor argumentelor

1612099986 425 O introducere in sintaxa Spread in JavaScript

Trebuie să iterăm matricea și să adăugăm toate elementele individuale pentru a produce rezultatul.

  • Împingeți elementele dintr-o matrice

funcția push () este utilizată pentru a împinge elementele într-o matrice. Limitarea cu împingere este că trebuie să împingem elemente unul câte unul (împingere (1,2,3)). Dacă există o matrice ale cărei elemente urmează să fie inserate în matrice utilizând push vom obține o matrice multidimensională, pe care nu am solicitat-o.

1612099987 412 O introducere in sintaxa Spread in JavaScript

Aplicați din nou la salvare

1612099987 139 O introducere in sintaxa Spread in JavaScript

După cum putem vedea, utilizarea aplicației nu arată foarte elegant și avem nevoie de o sintaxă simplă și mică pentru a face acest lucru. Să folosim spread …

1612099987 561 O introducere in sintaxa Spread in JavaScript

Elegant!

  • Copierea unui tablou
1612099988 985 O introducere in sintaxa Spread in JavaScript

Simplu!

Același rezultat poate fi produs folosind un obiect

1612099988 886 O introducere in sintaxa Spread in JavaScript
  • Concatenarea a 2 matrice

Concatenarea se face folosind funcția concat

1612099988 478 O introducere in sintaxa Spread in JavaScript

Același lucru poate fi realizat folosind … operatorul

1612099988 903 O introducere in sintaxa Spread in JavaScript
  • Conversia unui șir într-un tablou

Acest lucru se poate face folosind atât funcția split, cât și operatorul …

1612099989 430 O introducere in sintaxa Spread in JavaScript
1612099989 587 O introducere in sintaxa Spread in JavaScript
  • Utilizare în funcții max și min

Fragmentul de mai jos tinde să găsească elementul maxim din matrice, deci trecem întreaga matrice în funcție, dar obținem rezultatul ca NaN

1612099989 564 O introducere in sintaxa Spread in JavaScript

Putem folosi aplicarea, dar după cum se vede din exemplele anterioare, urăsc să o folosesc

1612099990 116 O introducere in sintaxa Spread in JavaScript

La fel pentru min

1612099990 851 O introducere in sintaxa Spread in JavaScript

Concluzie

Am văzut multe situații în care operatorul spread este util și ne reduce codul și, de asemenea, îl face foarte ușor de înțeles.

Dacă îți place Clap? și Urmăriți? pentru mai mult.

O introducere in sintaxa Spread in JavaScript
Google