Kaltaisesi lukijat auttavat tukemaan MUO: ta. Kun teet ostoksen käyttämällä sivustollamme olevia linkkejä, voimme ansaita kumppanipalkkion. Lue lisää.

Sanakirja on tietorakenne, jota voit käyttää tietojen tallentamiseen sovellukseesi. Voit tallentaa tietoja käyttämällä avain-arvo-paria, jonka avulla voit etsiä ja noutaa tietyn arvon.

Kun olet tallentanut tiedot sanakirjaan, voit suorittaa muita toimintoja, kuten iteroida jokaisen kohteen. Voit myös tarkistaa, onko kohde olemassa, tai poistaa kohteen, jota ei enää tarvita.

Sanakirjaobjektin luominen

Sanakirja on yksi niistä monet tärkeät tietorakenteet joita voit käyttää tietojen tallentamiseen. Voit luoda sanakirjat C# ja monet muut ohjelmointikielet. Voit myös luoda vastaava hashmap-tietorakenne Javassa.

Ei ole "sanakirja"-avainsanaa, jolla voit luoda sanakirjaobjektin JavaScriptissä. Voit kuitenkin luoda sanakirjan käyttämällä yleistä objektia. Tässä on esimerkki siitä, kuinka voit luoda tyhjän sanakirjan käyttämällä "Objekti"-avainsanaa:

antaa sanakirja = UusiEsine();

Voit myös luoda tyhjän sanakirjan käyttämällä tätä lyhennettyä syntaksia:

antaa emptyDictionary = {};

Jos haluat alustaa sanakirjan arvoilla, voit lisätä jokaisen arvon muodossa "avain: arvo".

Alla olevan esimerkin avulla voit luoda merkkijonoavaimen nimeltä "Pidgey" ja liittää sen arvoon. Arvo on objekti, jolla on lemmikin iän, värin ja sukupuolen ominaisuuksia.

antaa petDictionary = {
"Pidgey": { Ikä: 0.5, Väri: "Harmaa", Sukupuoli: "Uros" },
"Mokka": { Ikä: 0.5, Väri: "Ruskea", Sukupuoli: "Nainen" },
};

Avaimia ei ole rajoitettu merkkijonotietotyyppeihin. Voit käyttää muita tietotyyppejä, kuten numeroita tai loogisia arvoja.

antaa wcDictionary = { 
1: { Tiimi: "Argentiina" },
2: { Tiimi: "Ranska" },
};

antaa dictBool = {
totta: { Viesti: "vahvistettu" },
väärä: { Viesti: "kielletty" },
};

Kuinka lisätä arvoja sanakirjaobjektiin

Voit lisätä uusia kohteita sanakirjaan käyttämällä tätä muotoa:

sanakirja[uusi_avain] = uusi_arvo

Uusi_avain voi olla mikä tahansa valitsemasi kelvollinen avainarvo. Tämä on avain, jota käytät myöhemmin, kun haluat käyttää tiettyä sanakirjan kohtaa. Uusi_arvo voi olla mikä tahansa objekti tai arvo, jonka haluat liittää avaimeen.

Tämä on esimerkki siitä, kuinka voit lisätä uuden kohteen sanakirjaan käyttämällä joitain esimerkkiarvoja:

lemmikkisanakirja["omenat"] = { Ikä: 2, Väri: "Vihreä", Sukupuoli: "Uros" };

Aivan kuten alustuksen yhteydessä, voit myös käyttää muita tietotyyppejä edustamaan avainta:

wcDictionary[3] = { Tiimi: "Marokko" };

Kuinka käyttää arvoja avaimen perusteella

Voit käyttää arvoa sanakirjasta käyttämällä sen avainarvoa:

antaa dictionaryValue = petDictionary["Mokka"];
konsoli.log (dictionaryValue);

Palautettu arvo sisältää koko tälle avaimelle tallennetun objektin tai arvon:

Sanakirjan jokaisen kohteen iterointi

Voit iteroida jokaista sanakirjan kohtaa käyttämällä Object.keys()-metodia. Objekti. Keys() -menetelmä palauttaa taulukon, joka sisältää kaikki sanakirjassa käytetyt avaimet:

konsoli.Hirsi(Esine.keys (lemmikkisanakirja));

Sinun pitäisi sitten nähdä konsolissasi taulukko, joka sisältää kaikki sanakirjan avaimet:

Voit käyttää näppäinluetteloa sanakirjan kunkin kohteen läpikäymiseen ja kunkin avaimen arvon hakemiseen:

varten (konst avain /Esine.keys (lemmikkisanakirja)) { 
konsoli.log (näppäin + ": ");
konsoli.Hirsi(lemmikkieläinten Sanakirja[avain]);
};

Seuraavilla tuloksilla konsolissasi:

Kuinka tarkistaa, onko sanakirjassa kohde

Voit tarkistaa, onko sanakirjassa avain "in"-avainsanalla:

antaa sanakirja = "Mokka"sisään lemmikkieläinten Sanakirja; // palauttaa tosi
antaa notInDictionary = 'a'sisään lemmikkieläinten Sanakirja; // palauttaa false

Voit myös käyttää hasOwnProperty()-menetelmää tarkistaaksesi, onko kohde olemassa:

antaa olemassa = petDictionary.hasOwnProperty("Mokka"); // palauttaa tosi
antaa doesNotExist = petDictionary.hasOwnProperty('a'); // palauttaa false

Arvon poistaminen sanakirjasta

Voit asettaa kohteen nollaksi osoittaaksesi, että sillä ei ole arvoa:

lemmikkisanakirja["omenat"] = tyhjä;

Tämä kohta on kuitenkin edelleen olemassa sanakirjassa. Jos haluat poistaa kohteen kokonaan, voit poistaa sen käyttämällä "delete"-avainsanaa:

poistaa lemmikkisanakirja["omenat"];

Tietojen tallentaminen JavaScriptin sanakirjojen sisään

JavaScriptillä ei ole ensiluokkaista tukea sanakirjoille, mutta voit käyttää tavallista objektia avain/arvo-parien tallentamiseen.

Sanakirja on erittäin tehokas tietorakenne, jonka avulla voit tallentaa ja käyttää tietoja avainten avulla. Sanakirja ei ole ainoa paikka, johon voit tallentaa tietoja, joten voit tutkia muita tietorakenteita, jotka voisivat sopia paremmin käyttötapauksiisi.