Večdimenzionalna asociativna JavaScript polja. Delo z nizi JavaScript

Nizi v programskih jezikih Java in C # so dobro urejeni niz podatkov. Sestavljen je iz elementov, do katerih dostopamo z uporabo indeksov. Niz v programskih jezikih Java in C # lahko predstavimo kot trak enake velikosti celic. Ima tip, ki je določen s podatki. Na primer, lahko obstaja niz števil, vrstic ali objektov. Zato so vse celice enake velikosti, saj vsaka od njih ohrani enako vrsto podatkov. Če želite shraniti različne podatke, boste morali narediti več različnih polj.

[thumb] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_671.jpeg

Enostavnost uporabe nizov v programskih jezikih Java in C #

Dejstvo, da imajo celice enako velikost, vam omogoča udobno premikanje po njih. Programer ima indekse za dostop, ker pa je znano, da so vsi podatki shranjeni skupaj in so fizično locirani v določenem zaporedju, je enostavno izračunati, kje so potrebni podatki. Če poznamo to in koliko pomnilnika zaseda vsaka celica, je enostavno vedeti, kje so določene informacije določene vrste. Na primer, v celici je število in vemo, da 1 celica zasede 8 bitov, to je en bajt. Potem, da se premaknemo v celico številka 3 od začetka matrike, moramo odšteti dva bajta informacij ali 16 bitov. Vsa ta pravila in omejitve pri delu z nizi v programskih jezikih Java in C # so zelo priročni in pomagajo pri enostavni navigaciji po podatkih.


Nizi v javascriptin njihove značilnosti

Ker je javascript vse drugačno, definicija matrike nima nič skupnega s tem, kar je višje. Matrika je objekt. Podobno je seznamu elementov in ima dodatne lastnosti in metode. Vrsta in velikost elementov v nizih javascripta nista fiksna, "dolžina" matrike pa ne postane njena zgornja meja. To pomeni, da se lahko različne vrste podatkov shranijo v eno polje: številke, vrstice, predmete itd. Nihče ne nadzira, kaj je shranjeno v enem bloku v smislu jezika. Velikost celic prav tako ni določena zaradi te lastnosti polja javascript. Obstaja koncept "dolžine", vendar je to le neka lastnost predmeta, s katerim lahko delate na določen način. Obstaja tudi pojem asociativnega niza v javascriptu. Taki objekti so sestavljeni iz parov ključ-vrednost. Vrednosti, povezane z njimi, so ključi. To pomeni, da ko se nanaša na njih, vrne vrednost ključa. Pridružitveno polje v javascriptu je tisto, ki ima vrstice kot ključe.


[thumb] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_562 .jpeg [/thumb]

Kako ustvariti matriko v javascriptu

Za ustvarjanje matrike morate najprej deklarirati spremenljivko myArray na naslednji način: var myArray = []. Dobili bomo matriko brez elementov. Z uporabo klasičnih oglatih oklepajev, ki se uporabljajo v večini programskih jezikov, se ustvari prazen niz. Zdaj lahko delate z njim. Druga možnost je ustvariti niz podatkov in ga takoj izpolniti. To je lahko seznam mest, mesecev in drugih pomenov. Vsi bodo v nizu javascripta v določenem vrstnem redu. Prvi element ima indeks "0", dakot pri programiranju se številčenje vedno začne z ničle, indeks naslednjega elementa je "1" in tako naprej. To je način za ustvarjanje matrike s kvadratnimi oklepaji, ki je priporočljiva za uporabo.

Možnost ustvarjanja matrike z uporabo konstruktorja

Druga možnost je ustvariti matriko z uporabo konstruktorja s funkcijo Array. V tem primeru se deklarira spremenljivka, na primer "a", in z uporabo ključne besede "new" nastavi vrednost "Array". Imenovanje spremenljivk v navadnih črkah je najboljša praksa, zato je dodeljevanje teh vrednosti najboljše za izobraževalne namene, ne za delo s kodami. In še ena pripomba: pri oblikovalcu morate biti previdni in previdni, saj z njegovo pomočjo ne morete prenesti le seznama nekaterih vrednosti (na primer, vrstice) - v takšnem konstruktorju je včasih samo ena številka. Toda zato ne ustvarja matrike s podatki, ki ustrezajo tej številki. Če zapišete niz kode: "var a new =
", se v polju prikaže 5 praznih celic. Pri izhodu na konzolo dobimo oglati oklepaji s praznimi prostori, ločeni z vejicami. Če pišete v vejici "13", bo prikazan niz dveh elementov, od katerih je prvi en en, drugi pa trinity. Pri sklicevanju na to polje prikaže na konzoli seznam elementov v naslednji obliki: [1, 3].
http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_583.jpeg

Dolžina polja

Matrika v javascriptu je lastnost Length. Pomeni velikost polja, njegovo dolžino. Toda ta metoda ne deluje vedno pravilno. VV nekaterih primerih bo dejanska dolžina matrike precej drugačna. Zato mora programer razumeti in si zapomniti, da ta lastnost v resnici ne pravi resničnega števila elementov, čeprav je v večini primerov enaka. Dolžina je "indeks zadnjega elementa + 1". Če torej primerjamo to lastnost z istim jezikom v C #, bi to ustrezalo resničnosti. In "indeks zadnjega elementa + 1" je vedno pomenil število elementov v matriki. Toda delo z nizi v javascriptu se razlikuje od drugih programskih jezikov.

Sprememba dolžine polja

Vrednost dolžine niza se lahko ročno spremeni. Na primer, ustvarite lahko preprosto matriko s tremi enakimi elementi in na konzoli prikažete dolžino njene vrstice. Enaka bo trem. Če se zdaj obrnemo na različne elemente tega polja, bomo dobili njihov pomen. Toda če se obrnemo na element, ki ni pomemben, dobimo "nedefinirano", kar pomeni "ni definirano". V tem primeru se obnašanje dolžine matrike sploh ne začne.
[palec] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_674.jpeg

Kako se izračuna število elementov v matriki

Kljub temu, da za elementom z določenim indeksom, na primer tretjim, še ni drugih podatkov, lahko izberete vrednost elementa z indeksom "10". Ta vrednost je dodeljena elementu z absolutno indeksom. Potem dobimo niz negotovih vrednosti, dokler ne dosežemo elementa z dano vrednostjo. Torej, čeprav smo morda dejanskosamo štirje elementi v nizu z nizom negotovosti med njimi, bo tako dolžina črte enaka "11", ker je indeks zadnjega elementa številka "10", vrednost lastnosti pa se izračuna kot "indeks zadnjega elementa + 1". Zato, če želite izvedeti, koliko podatkovnih elementov v matriki je dejansko, razen negotovega, ni treba zanašati na Dolžino.

Značilnosti delovanja lastnosti dolžine

Če se na primer znova obrnemo na matriko, ki je nastavljena z novim, in poskušamo ugotoviti njeno dolžino v konzoli, dobimo 0, ker ne vsebuje elementov. . Če pa uporabite isto lastnost za matriko, ki jo je ustvaril konstruktor, potem, čeprav je prazna, je dolžina črte enaka številu, ki je bila v oklepajih. Dolžina bo preštela vse elemente, tudi če so prazni.
[thumb] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_475.jpeg
Za matriko, ki vsebuje seznam več nepraznih elementov, bo ta vrednost enaka njihovi številki. Vrednost Dolžina lahko spremenite z dodajanjem želene vrednosti za znak "=". In če jo spremenimo v neko vrednost, ki je manjša od trenutne, potem so vsi elementi, ki ji bodo sledili, odrezani od matrike. Na primer, če je dolžina matrike pet, in Dolžina je dve, potem bodo vsi elementi po drugem izginili pri dostopu do njega. To je eden od najlažjih načinov, da odrežete kos matrike, ki se nahaja na njenem koncu. Iskanje matrike javascript se izvede z uporabo funkcije find in metodeindexOf objekt Array.

Večdimenzionalni nizi in njihovo ustvarjanje

Zelo preprosto je ustvariti večdimenzionalno matriko v javascriptu iz objektov in drugih elementov. Ker vrednosti elementov niso fiksne, lahko eno polje uvrstimo v število, objekt, linijo in drugo matriko ter istočasno. Posledično dobimo niz štirih vrednosti, od katerih bo vsaka ločena. Na ta način lahko ustvarite večrazsežnostne matrike v javascriptu.
[palec] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_326.jpeg
Če je v enem nizu več, potem bo prvi ustrezal ničelnemu indeksu, drugi pa prvi in ​​tako naprej. To pomeni, da bo vsaka od njih prikazana kot element. Dvodimenzionalno polje v javascriptu je večdimenzionalno polje z 2 nivoji oglasov. Obstajajo tudi tridimenzionalni, štiridimenzionalni in tako naprej. Da bi del nekega niza dobil v drugem polju, se mora njegov element nanašati tudi na indeks, na primer: a

. Programer lahko ustvari večdimenzionalne matrike v javascriptu s skoraj neskončnim številom elementov.

Dodajanje in brisanje elementa matrike

Ker je matrika objekt, so vrednosti njenih elementov lastnosti objektov. Zato lahko delate z njimi na podoben način. Izbriše element iz matrike z lastnostjo brisanja in dostopom do indeksa. V večdimenzionalnih masivih se pri praznjenju nekaterih njihovih delov oblikuje praznina, ki bo ločena s komo. Če pa med brisanjem želite, da se druge vrednosti premaknejo navzgor in med njimi ni prostora, potem izbrišite elementUporablja se metoda Splice. Sprejema dva parametra. Prvi je indeks, iz katerega želite začeti, drugi pa je število elementov, ki jih želite izbrisati. Ta metoda vam omogoča, da izbrišete elemente v matriki in premaknete vse naslednje na tak način, da med njimi ni praznega prostora. Element lahko dodate v polje javascript, tako da dostopate do indeksa. Nova vrednost že obstoječega elementa je dodeljena takole: a= 5, kjer je a sam element, v svojih oglatih oklepajih je njegov indeks in po znaku "=" je nova vrednost. Popolnoma nov element dodamo s pomočjo indeksa, ki še ni bil uporabljen v matriki. Če velikost matrike v javascriptu ni znana, lahko uporabite spremenljivko Dolžina in jo zapišete kot: a [a.length] - to bo številka, ki ustreza "zadnjemu indeksu +1".
[thumb] http://hi-news.pp.ua/uploads/posts/2018-07/bagatovimrn-asocativn-javascript-masivi-robota-z-masivami-javascript_997.jpeg

Brskanje in razvrščanje nizov v javascript

Za razčlenjevanje matrike lahko uporabite poseben obrazec za zanko for in for. Vendar izkušeni programerji ne priporočajo uporabe. Dejstvo je, da če nastavite matriko z uporabo konstruktorja, bo ta metoda dala le eno številko. Če uporabite števec s spremenljivko od nič do dolžine črte, lahko vse elemente dobite hkrati. Razvrščanje matrike poteka z metodo razvrščanja. Toda v tem primeru je treba prvotno vrednost shraniti, če je še vedno potrebna v prihodnosti.

Sorodne publikacije

JavaScript /stack Primeri predmetov JavaScript JavaScript, nizi: opis JavaScript: Primeri aplikacij Matematika iz JavaScript matematike Uporaba javascript setTimeout ()