3 dalykai, kurių nežinote apie „JavaScript“ įrankius
Lėkštės yra plačiai naudojama programavimo kalbų funkcija; jie yra specialūs kintamieji kuri gali būti naudojama vienu metu išsaugoti kelias reikšmes. Tačiau, kai kalbama apie „JavaScript“, taip pat lengva, kaip ir išmokti, visada yra daugiau.
Šiame pranešime apžvelgsime tris mažiau žinomas, tačiau svarbias „JavaScript“ masyvų funkcijas, kurių anksčiau nežinojote.
1. Pridėkite „Custom Properties“ į „Arrays“
Jei norėtumėte išvalyti internetą ieškant išsamaus „JavaScript“ masyvų apibrėžimo, pamatysite, kad beveik kiekvienas šaltinis be nepavykus bus matomas masyvas, kaip tai tikrai yra, objektas.
Tiesą sakant, beveik viskas, ką sprendžiame „JavaScript“ programoje pasirodyti esąs objektas. „JavaScript“ yra dviejų tipų duomenų tipai, primityvūs ir objektų, bet primityvūs daiktai visada suvynioti į vidų.
Array, Function, Date ir tt yra iš anksto nustatyti „JavaScript“ objektai kurios turi įmontuotus metodus, savybes ir savo standartizuotą sintaksę.
„JavaScript“ masyvai gali turėti trijų skirtingų tipų savybės:
- Masyvo indeksai taip pat yra savybės
- Integruotos savybės
- Pasirinktinės savybės galite pridėti pats
Pirmieji du yra labiau žinomi, galite juos naudoti kiekvieną dieną, tačiau pamatysime juos greitai, prieš pereinant į tai, kaip galite pridėti savo priskirtą savybę masyvui.
Indeksai kaip ypatybės
„JavaScript“ masyvai naudoja kvadratinių skliaustų sintaksė, toks kaip var ary = ["oranžinė", "obuolys", "ličiai"];
.
Masyvo elementų indeksai iš esmės yra savybės kur nuosavybės pavadinimai yra visada ne neigiami sveikieji skaičiai.
The indekso elementų pora masyvo yra panašus į pagrindinės vertės pora objektą.
Indeksai yra unikalus Array objekto bruožas, ir skirtingai nuo kitų įmontuotų savybių, jie gali būti nustatyti tik su skliausteliais, toks kaip ary [3] = "persikas";
.
Integruotos ypatybės
Arražai taip pat turi įmontuotos savybės, toks kaip array.length
. The ilgis
turtą sudaro sveikasis skaičius reiškia masyvo ilgį.
Apskritai, įmontuotas savybes dažnai galima rasti iš anksto nustatytuose „JavaScript“ objektuose, pvz., Masyvuose. Kartu su įmontuotais metodais jie padeda pritaikyti bendrus objektus taip, kad objektai atitiktų skirtingus poreikius.
Įmontuotas savybes galima pasiekti arba su Object.key
arba objektas ["raktas"]
sintaksė. Taigi galite rašyti ary ["ilgis"]
pasiekti masyvo ilgį.
Sukurkite pasirinktines Array objekto ypatybes
Dabar pakalbėkime apie pridėkite savo savybes masyvams. Array yra iš anksto nustatyti objektai, skirtingose rodyklėse saugantys skirtingų tipų vertes.
Paprastai nereikia pridėti pasirinktinių savybių masyvui; tai yra viena iš priežasčių, dėl kurių pradedantiesiems paprastai nėra mokoma apie šią funkciją. Iš tiesų, jei norite apdoroti masyvą kaip įprasto objekto pridedant raktinių verčių poras, galbūt taip pat naudokite įprastą objektą. Bet tai nereiškia, kad nėra ypatingais atvejais kur galite pasinaudoti tuo, kad masyvas yra objektas, pridedant vieną ar daugiau pasirinktinių savybių.
Pavyzdžiui, masyvui galite pridėti pasirinktinę nuosavybę nurodo jo elementų „rūšį“ arba „klasę“, kaip jūs galite matyti toliau pateiktame pavyzdyje.
var ary = ["oranžinė", "obuolys", "ličiai"]; ary.itemClass = "vaisiai"; console.log (ary + "yra" + ary.itemClass "); // "apelsinas, obuolys, ličiai yra vaisiai"
Atkreipkite dėmesį, kad pasirinktinis turtas, kurį pridėjote prie masyvo, yra skaičiuojamas, o tai reiškia, kad juos atrinks tokios kilpos, kaip už… in
pareiškimas.
2. Pasukite per „Array Elements“
Jūs tikriausiai sakote „Aš žinau, kad jau“, kuri tikriausiai yra tiesa, jūs jau žinote, kaip pereiti prie masyvo elementų. Tačiau taip pat tiesa, kad sakymas „kilpas per masyvo elementus“ yra šiek tiek abstraktus, nes tai, ką mes iš tikrųjų perėjome, yra masyvo indeksai.
Kadangi masyvo indeksai susideda tik iš ne neigiami sveikieji skaičiai, mes kartojame sveiką skaičių, paprastai prasidedantį nuo nulio ir baigiant visą masyvo ilgį, tada naudokite tą iteruotą vertę, kad pasiektumėte masyvo elementą tam tikrame indekse.
Tačiau nuo „ECMAScript6“ galima rasti kelią tiesiogiai sujungti matricos reikšmes netrukdant indeksams, ir tai galima padaryti naudojant už…
kilpa.
Masyve - už…
kilpa per linijos elementus indeksų eilės tvarka, kitaip tariant, jis pasirūpins, kad indeksai būtų pakartoti ir gauti esamos masyvo vertės tam tikru indeksu. Ši kilpa idealiai tinka, jei norite tiesiog perjungti visus masyvo elementus ir dirbti su jais.
var ary = ["oranžinė", "obuolys", "ličiai"]; už (leiskite elemento elementą) console.log (item); // "oranžinė", "obuolys", "ličiai"
Palyginimui, reguliariai dėl
kilpa, mes gauname rodiklius vietoj vertybių kaip produkciją.
var ary = ["oranžinė", "obuolys", "ličiai"]; už (var punktas = 0; elementas < ary.length; item++) console.log(item); // 0, 1, 2
3. Elementų skaičius nėra jo ilgis
Paprastai, kai kalbame apie masyvo ilgis, mes manome, kad tai yra vertės masyvo skaičius arba ilgis, kurį mes davėme masyvui rankiniu būdu. Tačiau iš tikrųjų, masyvo ilgis priklauso nuo didžiausias esamas indeksas viduje.
Ilgis yra a labai lanksti nuosavybė. Nesvarbu, ar jau iš anksto nustatėte masyvo ilgį, jei pridėsite vertes prie masyvo, jo ilgis nuolat didėja.
var ary = []; ary.length = 3; console.log (ary.length); // 3 ary [5] = "abcd"; console.log (ary.length); // 6
Pirmiau pateiktame pavyzdyje galite matyti, kad masyvą suteikiau tik vienai reikšmei 5 rodyklėje, o ilgis tampa 6. Dabar, jei manote, kad pridėjus reikšmę 5 indeksu, masyvas automatiškai sukūrė 0–4 indeksus , tada jūsų prielaida yra neteisinga. Yra tikrai nėra esamų indeksų nuo 0 iki 4 į tą masyvą. Tai galite patikrinti naudodami į
operatorius.
var ary = []; ary.length = 3; console.log (ary.length); // 3 ary [5] = "abcd"; console.log (ary.length); // 6 konsolės.log (0 į ary); // false
Masyvas ary
tai, ką mes vadiname a „retas“ masyvas, masyvas, kuriame rodikliai nėra sukurtos nuolat, ir turi spragų. Priešingas "retas" masyvas yra „tankus“ masyvas kur indeksai yra nuolat matricoje, o elementų skaičius yra toks pat, kaip ir ilgis
.
The ilgis
nuosavybė taip pat gali sutrumpinti masyvą, užtikrinti, kad matricoje esantis aukščiausias indeksas būtų visada mažiau nei pati, kaip ilgis
pagal nutylėjimą visada yra daug didesnis už didžiausią indeksą.
Toliau pateiktame pavyzdyje galite pamatyti, kaip prarandame 5 elementą, sumažindami ilgis
iš ary
masyvas.
var ary = []; ary.length = 3; console.log (ary.length); // 3 ary [5] = "abcd"; console.log (ary.length); // 6 ary.length = 2; console.log (ary.length); // 2 konsolės.log (ary [5]); // neapibrėžtas
Papildoma literatūra
- 10 „JavaScript“ terminų, kuriuos turėtumėte žinoti iki šiol
- 4 ne taip paplitę, bet naudingi „Javascript“ pareiškimai, kuriuos turėtumėte žinoti
- Kodo optimizavimas naudojant „JS Hint“ - įrankis „Javascript“ įdirbimui