4 Nyttige JavaScript-erklæringer du bør vite
JavaScript-setninger gir oss muligheten til å implementer ulike typer logikk i vår kode. JavaScript gir oss flere av dem, som alle har sin egen hensikt og syntaks. Blant de mest kjente eksemplene kan vi finne uttrykserklæringer, iterasjonserklæringer, betingede uttalelser og mer
I dagens innlegg ser vi fire mindre vanlige JavaScript-setninger Du har kanskje ikke kjent før, men kan utdype JavaScript-kunnskapen din og gjøre det mulig å skrive bedre kode.
1. Empty Statement
I stedet for en JavaScript-setning, kan du legge til et tomt utsagn, som er skrevet som en enkelt semikolon ;
. Når JavaScript tolk tolker en tom setning, ingen kode utføres, derfor kan de være nyttige å erstatt delregistreringer som du ikke vil utføre.
Anta for eksempel at det er en variabel som heter lakmus
med standardverdien nøytral
. Basert på verdien av en annen variabel som heter pH-
, lakmus
endres til heller surt
når pH < 7 or grunnleggende
når pH> 7.
Hvis verdien av pH-
viser seg å være ugyldig, en feil blir kastet. For en tilstand På denne måten gjelder følgende betingede utsagn:
var litmus = 'nøytral'; var pH; hvis (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Men ovennevnte sett med setninger kaster en feil når pH-
Verdien er 7, noe som ikke burde være tilfelle.
Når pH-
er 7, lakmus
bør beholde standardverdien, det vil si nøytral
. Så, for et tilfelle som dette, legg til en betingelse når pH-
er 7 med en tom tom setning.
var litmus = 'nøytral'; var pH; hvis (pH> 0 && pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Nå, når pH-
er 7, utfører tolken ikke noen instruksjoner, og lakmus
holder sin standardverdi, nøytral
.
Tomme setninger kan også brukes til å fylle en matrise ved hjelp av til
sløyfe.
var ary = []; for (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
Vanligvis a til
loop statement er etterfulgt av en underoppgave som består av en enkelt, eller en blokk uttalelse (den som er vedlagt i krøllete parenteser) som skal utføres. Ved å bruke en tom setning i stedet for underoppgaven, vil tolken ikke ha noe å utføre etter hver løkke, så bare den looping oppstår, og sløyfeforholdene blir utført.
I eksemplet ovenfor, ary [i ++] = i
utfører for hver loop iterasjon som en del av looping tilstanden, og array ær
blir instantiated med verdier av Jeg
.
2. Den debugger
Uttalelse
I feilsøkingsverktøy kan vi legg til markører kalt stoppunkter til hvilken som helst linje i kildekoden til Merk linjene der debuggerverktøyet starter feilsøking.
I JavaScript, den debugger
uttalelse fungerer på samme måte som et bruddpunkt, bortsett fra at det er lagt til kildekoden direkte, heller enn innenfor et verktøy. Enhver kjørende debugger vil stopp scriptet kjøring når den når debugger
uttalelse for å hjelpe deg med å feilsøke koden.
Husk, debugging vil bli utløst bare hvis skriptet kjører i feilsøkingsmodus, dvs. et feilsøkingsprogram løper allerede over utførelsen av skriptet. Hvis det ikke finnes et øyeblikkelig debuggerprogram, mens du tolker debugger
uttalelse, tolken vil fortsette sitt arbeid som om ingenting skjedde.
Som en rask test kjører du følgende kode i Codepen, mens du holder nettleserens feilsøkingsverktøy åpent:
console.log ( 'tesing'); debugger; console.log ('debugging statement');
Du vil se et bruddpunkt i tillegg til debugger
erklæring som vist nedenfor i nettleserens feilsøkingsverktøy.
3. Merket erklæring
I JavaScript kan du også legge til etiketter til bestemte setninger. Ved å gjøre det kan du hoppe senere til den merkede utsagnet bruker etiketten i koden din, på en måte som gå til
setningen fungerer på noen andre språk.
Merkede utsagn kan kun brukes sammen med gå i stykker
og Fortsette
uttalelser, som i JavaScript er det ingen bokstavelig gå til
uttalelse.
Både gå i stykker
og Fortsette
kan bare brukes innenfor looping-setninger, for eksempel til
loop (med ett unntak, gå i stykker
kan brukes i bytte om
setningen også). Så, vi kan merke looper og bruke gå i stykker
og Fortsette
å kontrollere utførelsen av dem.
De syntaks av merkede utsagn er enkelt, du trenger bare å legge til navnet på etiketten med et følgende kolon, som du kan se det i eksemplet nedenfor, hvor sløyfe
er navnet på etiketten vi legger til i til
sløyfe.
loop: for (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Når verdien av Jeg
er 2, kjører kjøringen tilbake til løkken i stedet for å fortsette og forhindrer dermed konsollutgangen til “2”.
La oss se et annet eksempel med gå i stykker
uttalelse. Bare erstatt Fortsette
søkeord med gå i stykker
i eksempelet ovenfor, og du vil legge merke til at i stedet for å hoppe tilbake til løkken som det gjorde med Fortsette
, sløyfen slutter / bryter helt.
loop: for (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Eksemplene ovenfor var ganske enkle, slik at du raskt kan forstå hvordan merkede setninger fungerer, men i virkeligheten koding, brukes etiketter hyppigere i sammensatte sløyfer, når det er nødvendig å skille de forskjellige sløyfer, som i følgende eksempel:
loop: for (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Her, den ytre løkke pauser ved verdi 2 for variabel Jeg
og på 1 for j
, og konsollen returnerer følgende utgang:
0-0 0-1 1-0 1-1 2-0
4. Den med
Uttalelse
Når JS tolkeren kommer over et ukvalifisert navn Det angir ikke hvilken gjenstand eller funksjon samtalen er knyttet til, den søker i omfangskæden for ethvert egnet objekt eller funksjon som anropet kan referere til.
Ved å bruke med
uttalelse, kan vi legg til et objekt øverst i omfangskæden, og angi hvilket objekt samtalen er knyttet til.
I følgende eksempel kan du se at egenskapene til person
Objekt blir kalt ved å bruke navnene sine alene inne i med
uttalelse.
var person = firstName: "John", etternavn: "Doe", alder: "18", land: "Grønland"; med (person) console.log ("Hei, jeg heter" + firstName + "" + lastName + ". Jeg er" + alder + "år gammel og bor i" + land + "."); // "Hei, jeg heter John Doe. Jeg er 18 år gammel og bor i Grønland."
Sammenlign hvordan koden ovenfor vil se ut uten å bruke med
uttalelse:
var person = firstName: "John", etternavn: "Doe", alder: "18", land: "Grønland"; Console.log ("Hei, jeg heter" + person.firstName + "" + person.lastName + ". Jeg er" + person.age + "år gammel og bor i" + person.country + "." ); // "Hei, jeg heter John Doe. Jeg er 18 år gammel, og bor i Grønland."
Du kan se, den med
uttalelse kan være en flott snarvei hvis du jobber med mange egenskaper av samme objekt.
Vær imidlertid oppmerksom på at du bruker med
uttalelse i streng modus er ikke tillatt, siden det kan føre til noe omfangsforvirring.
Det anbefales også bare å bruke med
erklæring hvis interne setninger bruker objektet som er knyttet til med
setning, ellers tolkeren vil kaste bort tid på å se på objektet nevnt av med
For det første, for alle de ukvalifiserte eiendomsnavnene finner den senere i med
blokkere.