Nykyaikainen JavaScript ES6-ES13 (JS-ohje)

Muuttujan määrittely JavaScriptissä: let ja const selitettynä

Kaikki oppaan videot Moderni JavaScript ES6:sta ES13:een (JS-ohje)

Tässä oppaassa käsittelemme erilaisia menetelmiä muuttujan määrittelyyn JavaScriptissä, erityisesti ES6-standardin let ja const avainsanoja verrattuna var:iin, joka oli ainoa tapa luoda muuttujia ES5:ssä. Monet kehittäjät ovat kohdanneet odottamattomia käyttäytymisiä käyttäessään var:ia, mikä on johtanut bugeihin. Tämä oppitunti auttaa sinua ymmärtämään nykyaikaiset menetelmät ja varmistamaan, että määrittelet ja käytät muuttujia tehokkaasti.

Tärkeimmät havainnot

Uudet muuttujamäärittelyt let ja const tarjoavat etuja liittyen scopet, näkyvyyteen ja muuttujien käytön turvallisuuteen. let mahdollistaa muuttujan käytön lohkoscopessa, kun taas const luo muuttumattoman sidonnan.

Askel askeleelta opas

Muuttujien määrittely

Jotta voimme työskennellä muuttujien kanssa JavaScriptissä tehokkaasti, tutkimme ensin muuttujien määrittelyä hyödyntäen var:ia, let:iä ja const:ia. Aloitetaan main.js-tiedostosta, joka on linkitetty HTML-dokumenttiisi.

Muuttujan deklarointi JavaScriptissä: let ja const selitetty

Tässä käytämme avainsanaa var määritelläksemme muuttujan. Luodaanpa muuttuja nimeltä W ja annetaan sille alkusarvo.

var:n käyttäytyminen

Tyypillinen käyttäytyminen var:ille on se, että muuttuja on näkyvissä, vaikka se alustettaisiin myöhemmin koodissa. Testataanpa tätä:

Lisään konsolilokin C:stä ennen aloitusta. Odota tulosta, kun asetamme muuttujan C: n 0: ksi. Tulostuksessa pitäisi näkyä undefined, koska arvo asetetaan vasta määrittelyrivin jälkeen.

let:n esittely

Nyt tarkastelemme let:iä. Näyttääksemme eron, vaihda var let:ksi ja alusta muuttuja C: let C = 0.

Kun yritän käyttää C: tä ennen määrittelyä, saan virheilmoituksen, että yritän käyttää alustamatonta muuttujaa. Tämä käytös takaa, että saat aina virheen, kun yrität käyttää määrittelemätöntä muuttujaa.

Muuttujan ilmoittaminen JavaScriptissä: let ja const selitettynä

Lohkoscopet let:n kanssa

Toinen etu let:ssä on mahdollisuus määritellä muuttuja lohkoscopessa. Käytetään tähän if-lauseketta:

Kun luon let C = -1 if-lohkon sisällä, tämä muuttuja on näkyvissä vain tässä lohkossa. Kun yritän käyttää C: tä lohkon ulkopuolella, saan virheen.

Muuttujan deklarointi JavaScriptissä: let ja const selitetty

const:n käyttö

Seuraava askel on const:n käyttö. Jos käyttäisin const:ia let:n sijaan, luon muuttuvan muuttujan, jota ei voida muuttaa enää.

Kun yritän määrittää C:n uudelleen koodissa const C = 0, saan ilmoituksen siitä, että en voi antaa uudelleen arvoa muuttujalle, joka on konstantti.

Muuttumattomat objektit const:n kanssa

Kun käytämme const:ia objektin määrittelyyn, itse objektia voidaan muuttaa, mutta viittauksen muuttaminen ei ole mahdollista. Voin lisätä objekteihin elementtejä ilman ongelmia.

Parhaat käytännöt let:n ja const:n käytössä

Kokemukseni perusteella suosittelen käyttämään oletusarvoisesti const:ia, ellei ole varma, että muuttujan arvoa on muutettava myöhemmin. Tämä käytäntö johtaa paremmin luettavissa ja ylläpidettävissä olevaan koodiin.

Käytä let:iä, kun tarvitset arvon muuttamista lohkoscopessa. Esimerkki voisi olla laskentamuuttuja silmukassa.

Yhteenveto – Muuttujan määrittely JavaScriptissä: let ja const versus var

Yhteenvetona olemme tutkineet eroja var:n, let:n ja const:n välillä. let ja const tarjoavat olennaisia parannuksia liittyen scopeen sekä muuttujien turvallisuuteen. Kun var on globaalisti tai funktion paikallinen, let ja const varmistavat näkyvyyden lohkoscopessa. Lisäksi const takaa sidonnan muuttumattomuuden, mikä vähentää bugeja ja odottamatonta käyttäytymistä koodissa.

Usein kysytyt kysymykset

Kuinka määrittelen muuttujan JavaScriptissä?Voit määritellä muuttujan JavaScriptissä avainsanoilla var, let tai const.

Mikä ero on let:llae verrattuna var:iin?let mahdollistaa muuttujien määrittelyn, jotka ovat näkyvissä vain lohkoscopessa, kun taas var on globaalisti näkyvä.

Milloin minun pitäisi käyttää const:ia?const:ia tulisi käyttää, kun olet varma, että muuttujan arvoa ei tulisi muuttaa ohjelman suorittamisen aikana.

Mitä tapahtuu, jos yritän määrittää konstanttia uudelleen?Saat virheen, koska const-muuttujaa ei voida muuttaa.

Voinko muuttaa objekteja const:n kanssa?Kyllä, voit muuttaa objektille, joka on määritelty const:lla, sen ominaisuuksia, mutta et voi muuttaa viittausta itse objektiin.