Masyvas žemėlapio metodas naudojama kuriant naują susietą masyvą, remiantis kiekvieno elemento atgalinio skambinimo funkcijos grąžinimo verte.
var mappedArray = masyvas.žemėlapis (callbackFunction, thisValue)The perskambink yra funkcija, kuri bus iškviečiama kiekvieną kartą vienam elementui ir pateiks reikšmę, kuri bus saugoma naujame masyve. Skambinimo funkcijos sintaksė yra
funkcija (reikšmė, [rodyklė [, masyvas]])vertė yra būtinas argumentas, kuris iš tikrųjų yra vienas masyvo elementas.
The indeksas yra neprivalomas argumentas, kuris bus naudojamas kaip kiekvieno atgalinio skambinimo funkcijos elemento indeksas.
The masyvas yra neprivalomas argumentas. Mes galime perduoti šį argumentą, jei norime naudoti masyvą atgalinio skambinimo funkcijoje.
thisValue yra vertė, kurią norime perduoti, kuri bus naudojama kaip „tai“ skambinimo funkcijoje. Priešingu atveju bus perduodama „neapibrėžta“.
„Javascript“ suteikia „…“ ir „foreach“ kilpas, kad būtų galima kartoti elementus ir manipuliuoti masyvais. Bet kodėl mums reikia žemėlapio metodo? Yra dvi pagrindinės to priežastys. Vienas iš jų yra rūpestingumo atskyrimas, o antrasis - lengva sintaksė atliekant tokias užduotis. Taigi, pabandykime keletą skirtingų pavyzdžių, kad parodytume jo tikslą ir teisingą naudojimą.
Pavyzdžiai
Visų pirma, mes turėsime paprastą demonstraciją, kurioje turėsime paprastą skaičių masyvą, kuriame bandysime atlikti bet kokią paprastą aritmetinę kiekvieno elemento operaciją.
var arr = [4, 8, 16, 64, 49];Dabar, prieš taikydami žemėlapio metodą per šį masyvą. Pirmiausia parašysime atgalinio skambinimo funkciją, į kurią galėsime iškviesti savo žemėlapio funkciją, kurioje, tarkime, norime kiekvieną elementą padauginti iš 10 ir turėti naują masyvą.
funkcija padauginti (elementas)var newElement = elementas * 10;
grąžinti newElement;
Viskas nustatyta taip, kad masyvui būtų pritaikytas žemėlapio metodas ir būtų reikalaujami rezultatai.
var newArr = arr.žemėlapis (padauginti);Dabar, jei pažvelgsime į „newArr“,
konsolė.žurnalas (newArr);Išvestyje galime pamatyti naujausią susietą masyvą, kaip reikalaujama.
Turėkite tai omenyje, kad naujos susietos masyvo ilgis tikrai bus lygus pradiniam masyvui.
Yra trumpesnis būdas atlikti tą pačią užduotį naudojant žemėlapio metodo rodyklę ar anoniminę funkciją. Taigi, tokiu žemėlapio metodu galime parašyti atgalinio skambinimo funkciją
var newArr = arr.žemėlapis ((elementas) =>grąžinimo elementas * 10
)
Arba, jei norime būti profesionalai ir padaryti jį glaustesnį. Mes galime tai padaryti
var newArr = arr.žemėlapis (e => e * 10)Gerai! Taigi, tai buvo pats pagrindinis žemėlapio metodo ir skirtingų būdų, kaip parašyti atgalinio skambinimo funkciją, demonstravimas. Tačiau ši funkcija labiau praverčia, kai žaidžiame su daugybe objektų. Čia įvyksta tikrasis įgyvendinimas.
Žemėlapio naudojimas su objektų masyvu
Šiame pavyzdyje mes manome, kad objektų masyvas, kuriame kiekviename objekte yra žaidėjo informacija. Žaidėjo vardas ir pavardė bei asmens dokumentas.
var arr = [id: 12, vardas: "James",
id: 36, pavadinimas: "Morgan",
id: 66, pavadinimas: "Jordanija"
];
Tarkime, kad norime išgauti kiekvieno objekto ID ir turėti naują ID masyvą.
Tačiau norint suprasti, kuo žemėlapio metodas skiriasi ir padeda geriau nei „foreach“ kilpa. Mes bandysime abu šiuos veiksmus (žemėlapio metodą ir „foreach loop“) atlikti tą pačią užduotį ir sužinoti skirtumą.
Taigi, pirmiausia bandysime išgauti ID naudodami foreach kilpą ir tada naudodami žemėlapio metodą.
var extractedIDs = [];arr.forEach ((elementas) =>
grąžinti extractedIDs.stumti (elementas.id);
)
Dabar, jei mes pažvelgsime į ištrauktus ID.
konsolė.žurnalas (extractedIDs);
Mes juos išskyrėme į masyvą. Bet dabar pademonstruokime tą patį rezultatą naudodami žemėlapio metodą.
grąžinimo elementas.id;
)
konsolė.žurnalas (extractedIDs);
Pažvelgę į kodo ir tos pačios išvesties skirtumą, galime suvokti tikrąjį šių dviejų (foreach ir map) metodų skirtumą. Susirūpinimo sintaksė ir atskyrimas.
Panašiai galime atlikti daugybę kitų operacijų. Jei turime žaisti ir gauti tam tikrų duomenų iš objektų masyvo. Mes manome, kad objektų masyvas, kuriame kiekviename objekte yra dvi savybės: vardas ir pavardė.
var arr = [firstName: "John", pavardė: "Doe",
firstName: "Morgan", pavardė: "Freeman",
firstName: "Jordanija", pavardė: "Peterson"
];
Dabar mes norime turėti masyvą, kuriame būtų visi vardai. Taigi, norėdami įvykdyti savo tikslą, parašysime tokią žemėlapio funkciją
var fullName = arr.žemėlapis ((asmuo) =>grįžęs asmuo.vardas + "+ asmuo.pavardė
)
konsolė.žurnalas (fullName);
Kaip matote, mes turime atskirą masyvą su visais vardais. Tai puiku.
Taigi, tai yra keletas pagrindinių ir skirtingų būdų, kaip žemėlapio funkciją galima naudoti mūsų kūrimo reikalavimams patenkinti ir tai padeda kiekvieno „JavaScript“ kūrėjo gyvenime.
Išvada
Šiame straipsnyje mes sužinojome apie dažniausiai naudojamą „javascript“ žemėlapio žemėlapio () metodą masyvams ir sužinojome keletą skirtingų žemėlapio metodo naudojimo būdų. Šiame straipsnyje taip lengvai ir išsamiai paaiškinama žemėlapio metodo samprata, kad bet kuris pradedantis programuotojas galėtų jį suprasti ir panaudoti savo poreikiams. Taigi, toliau mokykitės, dirbkite ir gaukite „JavaScript“ naudodami „linuxhint“.com, kad geriau jį suprastum. Labai ačiū!