Lucrul cu matrice de date, javascript

Lucrul cu datele din matrice

Metoda concat () returnează o matrice rezultată din atașarea argumentelor metodei la matricea pentru care a fost apelată metoda specificată. Deci, când apelați un scenariu







var myArray = ["roșu", "verde", "albastru"];
alertă (myArray.concat ("albastru", "galben"));

rezultatul este următoarea matrice:
roșu, verde, albastru, albastru, galben

Dar fiți atent: concat () nu modifică matricea "în loc". Fiți atenți la rezultatul scenariului

var myArray = ["roșu", "verde", "albastru"];
myArray.concat ("albastru", "galben");
alertă (myArray);

rezultatul este următoarea matrice:
roșu, verde, albastru
Spre deosebire de metodele discutate anterior, push () și shift (). aici trebuie să salvați valoarea returnată. De exemplu:

var myArray = ["roșu", "verde", "albastru"];
myArray = myArray.concat ("albastru", "galben");

Dacă argumentul concat () în sine este o matrice, este "aliniat" în elementele matricei. Această aliniere nu este recursivă, deci pentru un argument de tablou care conține un element matrice, numai array-ul extern va fi aliniat. Următorul exemplu ilustrează acest fapt:

var myArray = ["roșu", "verde", "albastru"];
myArray.concat ("roz", ["violet", "negru"]);
// Returnează [roșu, verde, albastru, roz,
"violet", "negru"]
myArray.concat ("alb", ["gri", ["portocaliu", "crimson"]]);
// Returnează [roșu, verde, albastru, alb,
"gri", ["portocaliu", "crimson"]]
var myArr = myArray.concat ("alb", ["gri", ["portocaliu", "crimson"]]);
alertă (myArr [myArr.length-1]);
// Arată portocaliu, purpuriu

var myArray = ["roșu", "verde", "albastru"];






var strlngVersion = MyArray.join ("/");
alertă (stringVersion);

rezultatul este următoarea matrice:
roșu / verde / albastru

Un aspect important care trebuie notat aici este că metoda jin () nu are efectul secundar al distrugerii matricei. Acest lucru s-ar întâmpla în mod evident dacă tipul obiectului este schimbat, de exemplu, în următorul caz

var myArray = ["roșu", "verde", "albastru"];
myArray = myArray.join ("/");

Metoda join () este opusul metodei split () a obiectului String.

var myArray = ["roșu", "verde", "albastru"];
myArray.reverse ();
alertă (myArray);

rezultatul este următoarea matrice:
albastru, verde, roșu

Var myArray = [1, 2, 3, 4, 5];
myArray.slice (2); // returnează [3, 4, 5]
myArray.slice (1, 3); // returnează [2, 3]
myArray.slice (-3); // returnează [3, 4, 5]
myArray.slice (-3, -1); // returnează [3, 4]
myArray.slice (-4, 3); // returnează [2, 3]
myArray.slice (3, 1); // returnează []

îmbinare (cmapm, număr, valori);

Primul argument pe care trebuie să-l începeți este indexul împotriva căruia se efectuează acțiunea. Al doilea argument numeric specifică numărul de elemente care sunt eliminate din indexul de start. Toate celelalte argumente prezentate aici ca valori (ele sunt separate prin virgule, dacă există mai multe) sunt inserate în locul elementelor care trebuie șterse.

var myArray "[1, 2, 3, 4, 5];
myArray.splice (3,2, "a", "b");
// returnează 4,5 [1,2,3, "a", "b"]
myArray.splice (1,1, "aceasta", "pastă", "aici");
// returnează 2 [1, "aceasta", "pastă", "aici", 3, "a", "b"]

var myArray = [14,52,3,14,45,36];
myArray.sort ();
alertă (myArray);

rezultatul este următoarea matrice:
14,14,3,36,45,52

Motivul este că 14 este mai mic decât 3 în ceea ce privește ordinea rândurilor. Din fericire, funcția de sortare specificată este extrem de flexibilă, deci totul poate fi fixat. Pentru a sorta elementele într-o ordine diferită, puteți trece o funcție de comparație diferită metodei sort (), care va determina ordinea dorită. Această funcție trebuie să aibă două argumente și să returneze o valoare negativă dacă, din punctul de vedere al ordinei necesare, primul argument trebuie să fie înaintea celui de-al doilea argument. (Considerăm că primul este "mai mic decât" cel de-al doilea.) Dacă, din punctul de vedere al ordinei necesare, două elemente trebuie să fie egale, funcția trebuie să returneze o valoare zero. Dacă primul argument trebuie să urmeze după al doilea, funcția trebuie să returneze o valoare pozitivă. (Luați în considerare faptul că primul este "mai mult" decât al doilea.) De exemplu, pentru a efectua sortarea numerelor, puteți utiliza o funcție similară cu cea de mai jos:

funcția myCompare (x, y)
dacă (x Home Search

10 secțiuni aleatorii







Articole similare

Trimiteți-le prietenilor: