4 Užitečné JavaScript prohlášení byste měli vědět
Příkazy JavaScript nám dávají moc implementovat různé typy logiky v našem kódu. JavaScript nám poskytuje několik z nich, z nichž všechny mají svůj vlastní účel a syntaxi. Mezi nejznámějšími příklady můžeme najít výrazová vyjádření, iterační příkazy, podmíněné příkazy a další
V dnešním příspěvku uvidíme čtyři méně běžné JavaScript příkazy možná jste předtím nepoznali, ale můžete prohloubit své znalosti JavaScriptu a umožnit vám napsat lepší kód.
1. Prázdné prohlášení
Namísto jakéhokoli příkazu jazyka JavaScript můžete přidat prázdný příkaz, který je napsán jako jeden středník ;
. Když interpret jazyka JavaScript interpretuje prázdný příkaz, žádný kód není proveden, proto mohou být užitečné nahradit dílčí příkazy, které nechcete provést.
Předpokládejme například, že je volána proměnná lakmus
s výchozí hodnotou neutrální
. Na základě hodnoty jiné proměnné nazvané pH
, lakmus
změny kyselé
při pH < 7 or základní
při pH> 7.
Pokud je hodnota pH
Ukázalo se, že je neplatná, je vyvolána chyba. Pro stav takto platí následující podmíněné příkazy:
var litmus = 'neutrální'; var pH; (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Výše uvedená sada příkazů však vyvolá chybu, když pH
hodnota je 7, což by nemělo být.
Když pH
je 7, lakmus
by měla zachovat svou výchozí hodnotu, tzn neutrální
. Takže pro takový případ přidejte podmínku kdy pH
je 7 s koncovým prázdným příkazem.
var litmus = 'neutrální'; var pH; (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";
Teď, kdy pH
je 7, tlumočník neprovede žádné instrukce a lakmus
zachová výchozí hodnotu, neutrální
.
Prázdné příkazy lze také použít k naplnění pole pomocí pro
smyčka.
var ary = []; pro (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
Typicky, a pro
za příkazem loop následuje dílčí příkaz, který je tvořen jedním nebo blokovým prohlášením (uzavřeným v složené závorky). Použitím prázdného příkazu namísto dílčího prohlášení nebude mít tlumočník po každé smyčce nic k dispozici, takže pouze smyčky nastanou podmínky smyčky.
Ve výše uvedeném příkladu, ary [i ++] = i
provede pro každou iteraci smyčky jako součást podmínky smyčky a pole ary
dostane instanci s hodnotami i
.
2. debugger
Prohlášení
V nástrojích pro ladění můžeme přidat značky volal hraniční hodnoty na libovolný řádek ve zdrojovém kódu označte řádky, ze kterých ladicí program začne ladit.
V jazyce JavaScript debugger
prohlášení funguje stejně jako zarážka, kromě toho je to přímo do zdrojového kódu, spíše než v rámci nástroje. Libovolný spuštěný ladicí program bude zastavit provádění skriptu když dosáhne debugger
prohlášení, které vám pomohou ladit kód.
Nezapomeňte, že ladění bude spuštěno pouze pokud je skript spuštěn v režimu ladění, tj. ladící program již běží přes provádění skriptu. Pokud při interpretaci programu neexistuje žádný aktuálně spuštěný program pro ladění debugger
tlumočník bude pokračovat ve své práci, jako by se nic nestalo.
Jako rychlý test spusťte následující kód v Codepen a zároveň ponechte nástroj debuggeru prohlížeče otevřený:
console.log ('tesing'); debugger; console.log ('prohlášení o ladění');
Uvidíte zarážku vedle debugger
příkaz uvedený níže v nástroji pro ladění prohlížeče.
3. Označené prohlášení
V JavaScriptu můžete k určitým příkazům přidat také popisky. Tímto způsobem můžete později přejděte na označený příkaz pomocí svého štítku ve vašem kódu, druh jako jít do
prohlášení funguje v některých dalších jazycích.
Označené příkazy lze použít pouze společně s přestávka
a pokračovat
jako v JavaScriptu není doslovný jít do
prohlášení.
Oba přestávka
a pokračovat
lze použít pouze v příkazech looping, jako je pro
smyčky (s jednou výjimkou, přestávka
lze použít v přepínač
také). Můžeme tedy označit smyčky a použít přestávka
a pokračovat
kontrolovat jejich provádění.
syntaxe označených příkazů je jednoduchý, stačí přidat název štítku s následujícím dvojtečkou, jak je vidět v příkladu níže, kde smyčka
je název štítku, který přidáme do pro
smyčka.
smyčka: pro (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Když hodnota i
je 2, vykonávání přeskočí zpět do smyčky namísto pokračování a tím zabrání výstupu konzoly “2”.
Podívejme se na další příklad přestávka
prohlášení. Stačí nahradit pokračovat
klíčové slovo s přestávka
ve výše uvedeném příkladu, a všimnete si, že místo skoku zpět do smyčky, jako to udělal pokračovat
, smyčka končí / přestávky úplně.
smyčka: pro (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Výše uvedené příklady byly poměrně jednoduché, takže můžete rychle pochopit, jak označované příkazy fungují, ale v reálném kódování jsou štítky častěji používány ve složených smyčkách, když je nutné rozlišovat různé smyčky, jako v následujícím příkladu:
smyčka: pro (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Tady vnější smyčka přestávky v hodnotě 2 pro proměnnou i
a na 1 pro j
, a konzola vrátí následující výstup:
0-0 0-1 1-0 1-1 2-0
4. s
Prohlášení
Když tlumočník JS přichází s nekvalifikovaným jménem který neuvádí, ke kterému objektu nebo funkci je volání přiřazeno prohledá řetězec oboru pro jakýkoli vhodný objekt nebo funkci může odkazovat.
Pomocí s
Můžeme přidat objekt do horní části řetězce oboru, a určete, ke kterému objektu je volání přiřazeno.
V následujícím příkladu můžete vidět, že vlastnosti osoba
objektu jsou volány pomocí jejich názvů uvnitř s
prohlášení.
var person = firstName: "John", lastName: "Doe", věk: "18", země: "Grónsko"; with (person) console.log ("Ahoj, mé jméno je" + firstname + "" + lastName + ". Jsem" + věk + "let a žiji v" + country + "."); // "Ahoj, jmenuji se John Doe. Je mi 18 let a žiju v Grónsku."
Porovnejte, jak by výše uvedený kód vypadal bez použití s
prohlášení:
var person = firstName: "John", lastName: "Doe", věk: "18", země: "Grónsko"; console.log ("Ahoj, mé jméno je" + person.firstName + "" + person.lastName + ". Jsem" + person.age + "let a žiji v" + person.country + "." ); "Ahoj, jmenuji se John Doe. Je mi 18 let a žiju v Grónsku."
Vidíte s
příkaz může být velkou zkratkou, pokud pracujete s mnoha vlastnostmi stejného objektu.
Všimněte si však, že pomocí s
prohlášení v přísném režimu není povoleno, protože to může způsobit určitý zmatek rozsahu.
Také se doporučuje používat s
prohlášení, pokud jeho interní příkazy používají objekt spojený s s
v opačném případě bude tlumočník ztrácet čas hledáním do objektu, o kterém se zmiňuje s
nejprve, pro všechny nekvalifikované názvy nemovitostí to později najde uvnitř s
blok.