Rozlišuje javascript malá a velká písmena. Syntaxe JavaScriptu v jednoduchých slovech

JavaScript je jazyk a má svou vlastní syntaxi, kterou by bylo dobré dokonale znát.
JavaScriptový program se skládá z vět oddělených středníky.

Někdy můžete vynechat středník a dostat se z toho, ale ne vždy. Proto v případě, kdy je myšlen konec věty, je lepší jej nezapomenout uvést.

Pokud neúmyslně přeskočíte středníky, mezery nebo z nějakého jiného důvodu váš kód nemá styl (a to je důležité!), pak doporučuji ESLint.

Návrhy se skládají z:

  • Hodnoty
  • Operátoři
  • Výrazy
  • Klíčová slova
  • Komentáře

V JavaScriptu existují dva typy hodnot: proměnné a literály.

Proměnné

Proměnné slouží k ukládání hodnot. Chcete-li deklarovat proměnné v JavaScriptu, použijte klíčové slovo var.
Proměnné můžeme deklarovat třemi způsoby:

  • Pomocí klíčového slova var. Například, var y = 56;
  • Pouze přiřazením hodnoty. Například, y = 56;
    Tato možnost je však nežádoucí, protože v tomto případě se proměnná stává globální.
    Proč je globální proměnná špatná? Už jen proto, že se stane globálním, vymkne se kontrole nad rozsahem funkce. Může být buď změněna jiným kódem, nebo může přepsat samotnou hodnotu do kódu někoho jiného.
  • Pomocí klíčového slova let.
    Protože V JavaScriptu (před ECMAScript 6) neexistuje rozsah s rozsahem bloků, pak byl představen let, který umožňuje deklarovat proměnné s rozsahem - blok.
    Například if (true) (nechť y = 4;) console.log (y); // ReferenceError: y není definováno

    Můžete zobrazit aktuální podporu ES6.

Doslovy

Literály jsou pevné hodnoty. Patří sem datové typy jako null, Boolean, Number, Object, String.
Když například deklarujeme pole, část, která následuje za rovnítkem, je literál pole.

Var food = [‚sýr‘, ‚brambory‘, ‚okurka‘];

A jídlo je proměnná.

čísla

Čísla se píší s desetinnými místy nebo bez nich.

10.50 1001

Aby interpret pochopil, co znamená bod – volání metody nebo plovoucí desetinná čárka, musíme jej vyzvat jedním z následujících způsobů:

1..toString () 1 .toString () // mezera před bodem (1) .toString () 1.0.toString ()

Tětiva

Řetězec - text psaný pomocí dvojitých nebo jednoduchých uvozovek.

"Jsem struna" "A já jsem struna"

Přátelským způsobem musíte určit, které uvozovky použít, a při psaní kódu se řídit svou volbou.

V nastavení ESLint ve výchozím nastavení dokonce poskytují volbu, podle jejíchž výsledků se bude kód kontrolovat.

Identifikátory

Název, který dáváme proměnným, funkcím, vlastnostem, se nazývá identifikátor.
Může obsahovat pouze alfanumerické znaky, "$" a "_".
Jak se liší identifikátor od řetězce?

Řetězec je data a identifikátor je součástí kódu.

Var příjmení = "Smit";

„Smit“ je jednoznačně data jsou řetězcový literál, zatímco příjmení je úložištěm této hodnoty.
Všimněte si, že pomlčka není v identifikátoru povolena, protože se používá k odčítání.

Výrazy

Výraz je kombinace hodnot, proměnných, operátorů, která počítá hodnotu.
Například výraz, 3 * 5 počítá 15.
Výraz může také obsahovat proměnnou
x * 4
Hodnoty mohou být samozřejmě také řetězce.
Například výraz:

"den"+" je "+" slunečno "// započítáno do řetězce" Den je slunečno ".

Výrazy lze rozdělit na ty, které přiřazují hodnotu proměnné, a ty, které jednoduše počítají hodnoty.
První případ:

a za druhé:

Mimochodem, jakmile přidáme středník, už nemáme výraz, ale větu!

Var x = 56;

Čárka pro výrazy

Čárka vyhodnotí oba operandy a vrátí správnou hodnotu.

Var x = 0; var y = (x ++, 4); console.log (x); // 1 console.log (y); //4

Výrazy vyhodnocují hodnotu a lze je zapsat všude tam, kde se očekává hodnota. Například argument ve volání funkce nebo pravá strana přiřazení.

Každý z následujících řádků obsahuje výraz:

X x + 6 změnit pole ("a", "b")

Kdekoli js očekává větu, můžete také psát výrazy.
Takový příkaz se nazývá výrazový příkaz.

Ale nemůžete napsat větu, kde js předpokládá výraz. Například klauzule IF se nemůže stát argumentem funkce.

Porovnávání vět a výrazů

Podívejme se na klauzuli IF a podmíněný příkaz, což je výraz.

Var výsledek; if (x> 0) (výsledek = "kladné číslo";) else (výsledek = "záporné číslo";)

Ekvivalentní:

Var výsledek = (x> 0? "Pozitivní číslo": "Záporné číslo");

Mezi znakem = a ; výraz.
Aby se předešlo nejednoznačnosti při analýze, JS neumožňuje použití objektových literálů a funkčních výrazů jako vět.

Z toho vyplývá, že výrazové klauzule by neměly začínat:

  • složené závorky
  • s klíčovým slovem function

Pokud výraz začíná jedním nebo druhým, měl by být zapsán v kontextu výrazu.
K tomu jsou ve výrazu umístěny závorky.

Deklarace funkce a výraz funkce

Řekněme, že chceme deklarovat anonymní výraz funkce, pak napíšeme takto:

(funkce () (návrat "připraven!") ());

Podívejme se, jak se tato funkce bude lišit od funkce-deklarace formuláře

Funkce getReady () (vrácení "připraveno!")

  • Ten anonymní evidentně nemá jméno. Ale klidně to může být, pak to bude pojmenovaná funkce-výraz.
  • Funkce deklarace je vytvořena interpretem před provedením kódu, funkce výrazu je vytvořena až v okamžiku spuštění.
  • Výrazové funkce proto nejsou dostupné, dokud nejsou deklarovány.

Co když to napíšeme takhle?

Připravit se (); var getReady = funkce () (návrat "připraveno!";) getReady ();

V prvním řádku se zobrazí chyba: TypeError: getReady není funkce
Pátý nám vypíše "připraveno", protože funkce již byla deklarována.
Tento jev se nazývá zdvihání, proč k němu dochází je popsáno v příspěvku o.

Při studiu psaní se člověk nutně naučí základy pravopisu, gramatiky a pravopisu. Každý například ví, že věta začíná velkým písmenem a končí tečkou, text se dělí na odstavce atd.

Programovací jazyky se chovají podobným způsobem: aby program fungoval, musíte dodržovat určitá pravidla. Sada pravidel, která definují strukturu programovacích jazyků, se nazývá syntaxe. Mnoho programovacích jazyků je postaveno na stejných konceptech, ale používají jinou syntaxi.

Tento tutoriál vás seznámí se základy syntaxe a strukturování kódu v JavaScriptu.

Funkčnost a čitelnost

Funkčnost a čitelnost jsou velmi důležité aspekty syntaxe JavaScriptu, na které je třeba se zaměřit samostatně.

Jsou vyžadována některá pravidla syntaxe JavaScript kód... Pokud nejsou splněny, konzole vyhodí chybu a skript se ukončí.

Zvažte takovou chybu v "Ahoj, světe!"

// Příklad nefunkčního programu JavaScript
console.log ("Ahoj, světe!"

Na konci chybí uzavírací závorka, takže místo řetězce "Ahoj, světe!" program vrátí chybu:

Uncaught SyntaxError: missing) po seznamu argumentů

Aby skript mohl pokračovat, musí být přidána závorka. Takto může chyba v syntaxi JavaScriptu ovlivnit fungování programu.

Několik aspektů syntaxe a formátování JavaScriptu je založeno na různých úhlech pohledu. Jednoduše řečeno, existují stylistická pravidla a varianty, které jsou volitelné a nevedou k chybám při spuštění kódu. Existuje však také mnoho obecných konvencí a konvencí, které je rozumné sledovat, aby vývojáři projektů a kódu měli všechny potřebné znalosti o aktualizacích stylu a syntaxe. Dodržování běžných konvencí zlepší čitelnost vašeho kódu.

Zvažte následující tři možnosti přiřazení hodnoty proměnné:

const pozdrav = "Dobrý den"; // žádné mezery mezi proměnnou a řetězcem
const pozdrav = "Dobrý den"; // nadměrné mezery po přiřazení
const pozdrav = "Dobrý den"; // jeden prázdný znak mezi proměnnou a řetězcem

Všechny tři výše uvedené řádky budou fungovat stejně. Ale třetí možnost (pozdrav = "Dobrý den") je zdaleka nejpoužívanějším a nejčitelnějším způsobem psaní kódu, zvláště když se na něj díváte v kontextu většího programu.

Je velmi důležité sledovat integritu a konzistenci veškerého programového kódu.

Níže se podíváme na několik příkladů, abyste se seznámili se syntaxí a strukturou kódu JavaScript.

Prázdné znaky

Prázdné znaky JavaScriptu jsou mezery, tabulátory a nové řádky (toto se provádí stisknutím klávesy Enter). Jak bylo uvedeno dříve, překladač JavaScriptu ignoruje nadbytečné mezery mimo řádek, mezery mezi operátory a další znaky. To znamená, že následující tři příklady přiřazení proměnných budou mít stejný výsledek:

const userLocation = "New York City," + "NY";
const userLocation = "New York City," + "NY";
const userLocation = "New York City," + "NY";

Proměnná userLocation bude nastavena na „New York City, NY“ bez ohledu na styl přiřazení této hodnoty. Nezáleží na JavaScriptu, který prázdné znaky Jsou používány.

Při psaní programů platí jedno osvědčené pravidlo: při umisťování mezer dodržujte stejná pravidla, která používáte v matematice nebo gramatice. Například řádek:

snadněji čitelné než:

Důležitou výjimkou z tohoto pravidla je přiřazení více proměnných. Všimněte si pozice = v následujícím příkladu:

const companyName = "Mojespolečnost";
Const CompanyHeadquarters = "New York City";
const companyHandle = "moje společnost";

Všechny operátory přiřazení (=) jsou zarovnány s mezerami. Tento typ struktury není používán všemi kódovými bázemi, ale může zlepšit čitelnost.

Další zalomení řádků jsou v JavaScriptu také ignorovány. Obvykle se nad komentář a za blok kódu vkládají další prázdné řádky.

Kulaté závorky

V klíčových slovech jako if, switch a for se obvykle před a za závorky přidávají mezery. Zvažte následující příklad:

// Příklad syntaxe příkazu if
pokud () ()
// Zkontrolujte matematickou rovnici a vytiskněte řetězec do konzole
pokud (4< 5) {
console.log ("4 je menší než 5.");
}
// Příklad syntaxe cyklu for
pro () ()
// Opakujte 10krát a vytiskněte každé číslo iterace do konzole
for (ať i = 0; i<= 10; i++) {
console.log (i);
}

Jak vidíte, závorky příkazu if a smyčky jsou na obou stranách odděleny mezerami.

Když kód odkazuje na funkci, metodu nebo třídu, píšou se závorky vedle názvu bez mezery.

// Příklad funkce
function functionName () ()
// Inicializace funkce pro výpočet objemu krychle
funkční kostka (číslo) (
return Math.pow (číslo, 3);
}
// Vyvolání funkce
kostka (5);

Ve výše uvedeném příkladu je krychle () funkce a závorky () budou obsahovat parametry nebo argumenty. V tomto případě jsou parametry vyjádřeny jako číslo nebo 5. Psaní kostky () s mezerou bude také fungovat, ale téměř se nepoužívá. Společný zápis funkce a závorek usnadňuje přiřazení funkce k jejím argumentům.

Středník

Stejně jako se odstavce textu skládají z vět, programy JavaScript se skládají z řady příkazů zvaných výrazy. Na konci věty je tečka a na konci výrazu v JavaScriptu středník (;).

// Jediný příkaz JavaScript
const now = new Date ();

Pokud vedle sebe sousedí dva nebo více výrazů, oddělte je středníkem.

// Získejte aktuální časové razítko a vytiskněte jej do konzole
const now = new Date (); console.log (nyní);

Pokud jsou výrazy odděleny znakem nového řádku, středník je volitelný.

// Dva příkazy oddělené novými řádky
const now = nové datum ()
console.log (nyní)

Podle obecné konvence je obvyklé umístit za výraz středník, bez ohledu na znaky nového řádku. Tím se snižuje pravděpodobnost chyb.

// Dva příkazy oddělené novými řádky a středníky
const now = new Date ();
console.log (nyní);

Mezi inicializaci a podmínku v cyklech for je také umístěn středník:

pro (inicializace; podmínka; přírůstek) (
// spusťte smyčku
}

Středník se nepoužívá za příkazy if, for, do, while, class, switch a funkce. Tyto operátory jsou uzavřeny ve složených závorkách (). Zvažte následující kód:

// Inicializuje funkci pro výpočet plochy čtverce
funkční čtverec (číslo) (
return Math.pow (číslo, 2);
}
// Vypočítejte obsah čísla většího než 0
if (číslo> 0) (
číslo umocněné na druhou);
}

Buďte opatrní, protože ne každý kód uzavřený ve složených závorkách středník nevyžaduje. Objekty jsou uzavřeny ve složených závorkách a musí končit středníkem.

// Příklad objektu
const název_objektu = ();
// Inicializace trojúhelníkového objektu
konstantní trojúhelník = (
typ: "vpravo",
úhel: 90,
strany: 3,
};

Je běžnou praxí umisťovat středníky za každý příkaz a výraz JavaScript, kromě těch, které končí složenými závorkami.

Strukturování kódu

Technicky lze veškerý JavaScript kód umístit na jeden řádek. Ale takový kód je velmi obtížné číst a udržovat. Proto je program rozdělen do řádků.

Například příkaz if / else lze napsat na jeden řádek nebo jej rozdělit:

// Podmíněný příkaz napsaný na jednom řádku
if (x === 1) (/ * spustit kód, pokud je pravda * /) else (/ * spustit kód, pokud je nepravda * /)
// Podmíněný příkaz s odsazením
if (x === 1) (
// spustit kód, pokud je true
) jinak (
// spustit kód, pokud je false
}

Upozorňujeme, že jakýkoli kód obsažený v bloku je odsazen. Můžete odsadit pomocí dvou mezer, čtyř mezer nebo tabulátorů. Výběr metody odsazení je zcela na osobních preferencích nebo radě vaší organizace.

Otevřená závorka na konci prvního řádku - obvyklým způsobem strukturování JavaScriptových operátorů a objektů. Někdy se závorky objevují na samostatných řádcích:

// Podmíněný příkaz se složenými závorkami na nových řádcích
if (x === 1)
{
// spustit kód, pokud je true
}
jiný
{
// spustit kód, pokud je false
}

Tato struktura se v JavaScriptu, stejně jako v jiných jazycích, používá jen zřídka.

Vnořené příkazy musí být odděleny:

// Inicializace funkce
funkce jeEqualToOne (x) (
// Zkontrolujte, zda se x rovná jedné
if (x === 1) (
// při úspěchu vrátí true
vrátit true;
) jinak (
vrátit false;
}
}

Díky správnému odsazení je kód čitelný. Jedinou výjimkou z tohoto pravidla, kterou je třeba mít na paměti, je, že komprimované knihovny odstraňují všechny nepotřebné symboly, aby se zmenšila velikost souboru.

Identifikátory

Názvy proměnných, funkcí nebo vlastností v JavaScriptu se nazývají identifikátory. Identifikátory se skládají z písmen a číslic, ale nemohou obsahovat znaky mimo $ a _ a nemohou začínat číslem.

Rozlišování malých a velkých písmen

U jmen se rozlišují velká a malá písmena. To znamená, že myVariable a myvariable budou považovány za dvě různé proměnné.

var moje proměnná = 1;
var mojeproměnná = 2;

Podle obecné konvence se jména píší velbloudím písmem: první slovo se píše malým písmenem, ale každé následující slovo začíná velkým písmenem. Globální proměnné nebo konstanty se píší velkými písmeny a oddělují se podtržítky.

const INSURANCE_RATE = 0,4;

Výjimkou z tohoto pravidla jsou názvy tříd, které obvykle začínají u každého slova velkým písmenem (PascalCase).

// Inicializace třídy
třída PříkladClass (
konstruktér () ()
}

Chcete-li zajistit čitelnost vašeho kódu, musíte důsledně používat identifikátory ve všech programových souborech.

Vyhrazená klíčová slova

Identifikátory by také neměly obsahovat žádná vyhrazená klíčová slova. Klíčová slova jsou slova JavaScriptu, která mají vestavěnou funkci. Patří mezi ně var, if, for a this.

Nemůžete například přiřadit hodnotu proměnné s názvem var.

var var = "Nějaká hodnota";

JavaScript zná klíčové slovo var, takže vyvolá chybu:

SyntaxError: Neočekávaný token (1: 4)

Syntaxe JavaScriptu je soubor pravidel pro to, jak jsou psány programy JavaScript. V této lekci se podíváme na základní lexikální struktury jazyka.

Sada znaků

Při psaní programů JavaScript se používá znaková sada Unicode. Na rozdíl od 7bitového kódování vhodné pouze pro anglického jazyka a 8bitové kódování vhodné pouze pro angličtinu a hlavní západoevropské jazyky, 16bitové Unicode podporuje prakticky každý psaný jazyk na planetě. ECMAScript v3 vyžaduje implementace JavaScriptu pro podporu Unicode verze 2.1 nebo vyšší a ECMAScript v5 vyžaduje implementace pro podporu Unicode verze 3 nebo vyšší.

Var str = "ahoj světe!"; // Je použito latinské písmo var str = "Ahoj světe!"; // Používá se azbuka

Prázdné znaky

Bílé znaky zlepšují čitelnost zdrojového kódu, ale tyto znaky obecně nejsou potřeba pro funkčnost skriptu js.

Prázdné znaky
Kód symbolu název Snížení Popis Úniková sekvence
U + 0009 Vodorovná karta Přesune pozici tisku na další vodorovnou zarážku tabulátoru \ t
U + 000B Vertikální záložka Přesune pozici tisku na další vertikální zarážku tabulátoru \ v
U + 000C Posun stránky, změna stránky Vysune aktuální stránku a zahájí tisk od další \ f
U + 0020 Prostor Mezery mezi písmeny
U + 00A0 Nepřerušitelný prostor Znak, který se objevuje uvnitř řádku jako běžná mezera, ale v tomto bodě neumožňuje přerušení řádku

Kromě bílých znaků se pro zlepšení čitelnosti původního textu používají také zalomení řádků. V některých případech však mohou znaky na konci řádku narušovat provádění kódu JavaScript, protože existuje několik bodů, kde je jejich použití zakázáno. Znaky na konci řádku také ovlivňují proces automatická instalace středníky.

Následující znaky jsou interprety JavaScriptu rozpoznány jako znaky konce řádku:

Středník

JavaScriptový program (skript) je seznam „instrukcí“, které provádí webový prohlížeč.
V JavaScriptu jsou instrukce obvykle odděleny středníky (;).

Pokud je na jednom řádku umístěno několik instrukcí, pak by mezi ně měl být vložen středník (;).

V mnoha případech JavaScript interpretuje zalomení řádků jako oddělovač příkazů automatický vstup středníky (ASI) k dokončení pokynů.
Pokud je každý příkaz umístěn na samostatném řádku, lze oddělovač vynechat:

Jedna instrukce může zahrnovat více řádků:

V tomto případě JavaScript čeká na dokončení výrazu, a proto mezi řádky automaticky nevkládá "virtuální" středník.

Poznámka: Přestože středníky na konci příkazů jsou nepovinné, doporučujeme je vždy přidat. Nyní je toto pravidlo, kterým se řídí všechny velké projekty.

Toto pravidlo zabraňuje některým chybám, jako je neúplné zadání, a také umožňuje komprimovat kód odstraněním mezer. Výsledkem komprimace kódu bez středníků je syntaktické chyby... Kromě toho přítomnost středníků zabraňuje snížení výkonu, protože analyzátory se snaží opravit podezřelé chyby přidáním chybějících středníků.

Rozlišování malých a velkých písmen

Programy JavaScript jsou psány pomocí znakové sady Unicode, která zahrnuje znakové sady ASCII a Latin-1 a je podporována téměř všemi jazyky a platformami.
V JavaScriptu všechny prvky, včetně názvů proměnných, funkcí a operátorů, rozlišují velká a malá písmena a musí vždy obsahovat stejnou sadu velkých a malá písmena... Například klíčové slovo while by mělo být napsáno jako „while“ a nikoli „While“ nebo „WHILE“.

Podobně num, NUM a Num jsou tři různé proměnné:

Komentáře (1)

Komentáře umožňují zvýraznit část programu, která není spuštěna interpretem JavaScriptu, ale slouží pouze k vysvětlení obsahu programu.
Komentáře JS mohou být jednořádkové a víceřádkové.

Jednořádkové komentáře začínají dvojitým lomítkem //. Text je považován za komentář až do konce řádku:

Víceřádkový komentář začíná lomítkem a hvězdičkou (/ *) a končí jimi v opačném pořadí (* /). Můžete okomentovat jeden nebo více řádků takto:

Rada: Nezanedbávejte komentáře ve svých kódech. Jsou užitečné pro ladění a údržbu programů. Během vývojové fáze může být lepší nepotřebný kus kódu okomentovat, než jej pouze smazat. Co když ho budete muset obnovit?

Identifikátory

Identifikátor je posloupnost písmen, čísel, podtržítek (_) a znaků dolaru ($). Číslice nemůže být prvním znakem identifikátoru, od té doby je pro interpret JavaScriptu obtížnější rozlišit identifikátory od čísel. Identifikátory fungují jako názvy proměnných, funkcí, vlastností objektů atd.
Z důvodu kompatibility a snadnosti úprav se k vytváření identifikátorů obvykle používají pouze znaky a čísla ASCII. V ECMAScript v3 však mohou identifikátory obsahovat písmena a čísla z úplné znakové sady Unicode. To umožňuje programátorům pojmenovávat proměnné ve svých rodných jazycích a používat v nich matematické symboly:

Název proměnné = "Max"; var Π = 3,14;

Historicky programátoři používali různé způsoby kombinace několika slov k zápisu identifikátorů. Dnes existují dva dobře zavedené nevyřčené styly: camelCase a snake_case.
V JavaScriptu je nejoblíbenějším stylem pro pojmenování víceslovných identifikátorů camelCase neboli velbloudí notace. To znamená, že první písmeno je malé a první písmena všech následujících slov jsou velká, například:

Var první Druhý; var myCar = "audi"; var doSomethingImportant;

Pozornost: V JavaScriptu je zakázáno dělení více slov za účelem zápisu identifikátorů. Jsou vyhrazeny pro matematické odčítání.

Poznámka: V JavaScriptu klíčová slova, vyhrazená slova a hodnoty true, false a null nemohou být identifikátory.

Klíčová slova a vyhrazená slova

Standard ECMA-262 definuje sadu klíčových slov, která nelze použít jako identifikátory. Vyhrazená slova mají v JavaScriptu specifický význam, protože jsou součástí syntaxe jazyka. Použití vyhrazených slov bude mít za následek chybu kompilace při načítání skriptu.

Vyhrazená klíčová slova ECMAScript® 2015

  • přestávka
  • úlovek
  • třída
  • konst
  • pokračovat
  • debugger
  • výchozí
  • vymazat
  • vývozní
  • rozšiřuje
  • Konečně
  • funkce
  • import
  • instanceof
  • vrátit se
  • super
  • přepínač
  • házet
  • Typ
  • zatímco
  • výtěžek

Klíčová slova vyhrazená pro budoucnost

ECMA-262 navíc obsahuje sadu vyhrazených slov, která také nelze použít jako identifikátory nebo názvy vlastností. Nyní za nimi nejsou žádné funkce, ale mohou se objevit v budoucích verzích:

  • čekat

V přísném režimu jsou do tohoto seznamu přidána následující slova:

  • nářadí
  • balík
  • chráněný
  • statický
  • rozhraní
  • soukromé
  • veřejnost

Vyhrazená klíčová slova v ECMAScript® verze 1 až 3

  • abstraktní
  • booleovský
  • dvojnásobek
  • finále
  • plovák
  • rodák
  • krátký
  • synchronizované
  • přechodný
  • nestálý

ECMAScript 5th Edition mírně změnil pravidla pro používání klíčových slov a vyhrazených slov. Stejně jako dříve nemohou být identifikátory, ale nyní je lze použít jako názvy vlastností v objektech. Pro zachování kompatibility s minulými a budoucími revizemi ECMAScriptu je však stále nejlepší nepoužívat klíčová slova a vyhrazená slova jako identifikátory a názvy vlastností.

Výsledky

  • Interpret JavaScriptu ignoruje všechny mezery, které mohou být přítomny mezi jazykovými konstrukcemi, a zachází s textem programu jako s nepřetržitým proudem kódu.
    Kromě toho JavaScript také z velké části ignoruje řádkování. Mezery a odřádkování lze proto bez omezení používat ve zdrojovém kódu programů pro formátování a zpřístupnění čitelnosti.
  • Vynechání středníků není dobrou programátorskou praxí, a proto je vhodné vytvořit si návyk na jejich používání.
  • V JavaScriptu všechny prvky, včetně názvů proměnných, funkcí a operátorů, rozlišují malá a velká písmena a musí vždy obsahovat stejnou sadu velkých a malých písmen.
  • Nezanedbávejte komentáře ve svých kódech. Jsou užitečné pro ladění a údržbu programů. Nedělejte si starosti se zvětšením velikosti kódu, protože existují nástroje pro kompresi JavaScriptu, které po odeslání snadno odstraní komentáře.
  • Identifikátory fungují jako názvy proměnných, funkcí, vlastností objektu a skládají se z posloupnosti písmen, čísel, podtržítek (_) a znaků dolaru ($).
  • Klíčová slova JavaScript používaná k označení prvků syntaxe jazyka, stejně jako další slova vyhrazená pro budoucnost, nelze použít jako názvy proměnných, funkcí a objektů.

Syntaxe JavaScriptu

JavaScript ušel od roku 1995 dlouhou cestu od skromné ​​součásti prohlížeče Netscape k moderním vysoce výkonným interpretům JIT. Zdálo by se, že před pouhými pěti lety byli vývojáři ohromeni objevením Ajaxu, ale nyní komplexní JavaScriptové aplikace dosáhly objemu stovek a tisíců řádků kódu.

Minulý rok se objevila nová generace JavaScriptových aplikací, které se neliší od desktopových aplikací – neuvěřitelný pokrok ve webové technologii. Zmizely pomalé požadavky na stránky pokaždé, když uživatel interaguje s aplikací. JavaScript engine se stal tak výkonným, že bylo možné přetrvat stav na straně klienta, což výrazně zrychluje odezvu aplikace a zlepšuje kvalitu její práce.

Pokud jste obeznámeni s jinými programovacími jazyky, může být užitečné vědět, že JavaScript je vysokoúrovňový, dynamický, netypovaný a interpretovaný programovací jazyk, který se dobře hodí pro programování v objektově orientovaných a funkčních stylech. JavaScript dědí svou syntaxi od Javy, své prvotřídní funkce od Scheme a dědičnost založenou na prototypech od Self. Ale nemusíte znát všechny tyto jazyky nebo znát jejich terminologii, abyste se naučili JavaScript.

V tomto článku se podíváme na základní lexikální struktury jazyka.

Symboly

Při psaní programů JavaScript se používá znaková sada Unicode. Unicode je nadmnožinou kódování ASCII a Latin-1 a podporuje prakticky každý psaný jazyk na planetě. Standard ECMAScript 3 vyžaduje implementace JavaScriptu pro podporu Unicode 2.1 nebo vyšší a ECMAScript 5 vyžaduje implementace pro podporu Unicode 3 nebo vyšší.

Rozlišování malých a velkých písmen

JavaScript je jazyk citlivý na velká a malá písmena. To znamená, že klíčová slova, názvy proměnných a funkcí a jakékoli další jazykové identifikátory musí vždy obsahovat stejnou sadu velkých a malých písmen.

Například klíčové slovo while by mělo být napsáno jako „while“ a nikoli „While“ nebo „WHILE“. Podobně, myvar, Myvar, MyVar a MYVAR jsou názvy čtyř různých proměnných. Pamatujte však, že HTML (na rozdíl od XHTML) nerozlišuje velká a malá písmena. Protože HTML a JavaScript na straně klienta spolu úzce souvisí, může být tento rozdíl matoucí. Mnoho objektů JavaScript a jejich vlastností má stejné názvy jako značky a atributy. jazyk HTML kterou představují. Zatímco však v HTML lze tyto značky a atributy zadávat v každém případě, v JavaScriptu je obvykle nutné psát malými písmeny.

Například atribut onclick obslužné rutiny události je v HTML nejčastěji zadán jako onClick, ale v kódu JavaScript (nebo v dokumentu XHTML) by měl být označen jako onclick.

Mezery, odřádkování a řídicí znaky formátu

JavaScript ignoruje mezery, které mohou být mezi tokeny v programu. Kromě toho JavaScript také z velké části ignoruje řádkování. Mezery a odřádkování lze proto bez omezení používat ve zdrojovém kódu programů pro formátování a zpřístupnění čitelnosti.

Kromě obvyklého znaku mezery (\ u0020) rozpozná JavaScript navíc jako mezery následující znaky: tabulátor (\ u0009), svislý tabulátor (\ u000B), překlad formátu (\ u000C), nezalomitelná mezera (\ u00A0), značka pořadí bajtů (\ uFEFF ), stejně jako všechny znaky Unicode patřící do kategorie Zs.

Překladače JavaScriptu rozpoznávají následující znaky jako znaky konce řádku: posun řádku (\ u000A), návrat vozíku (\ u000D), oddělovač řádku (\ u2028) a oddělovač odstavců (\ u2029). Posloupnost znaků návratu vozíku a posunu řádku je interpretována jako zakončení jednoho řádku.

Znaky Unicode pro řízení formátu (kategorie Cf), jako je ZNAČKA ZPRAVA DOLEVA (\ u200F) a ZNAČKA ZLEVA DOPRAVA (\ u200E), řídí vizuální prezentaci textu, ve kterém se vyskytují. Jsou nezbytné pro správné zobrazení textu v některých jazycích a jsou platné v komentářích JavaScript, řetězcových literálech a literálech. regulární výrazy ale ne v identifikátorech (jako jsou názvy proměnných) definovaných v programech JavaScript. Výjimkou jsou ZERO WIDTH JOINER (\ u200D) a ZERO WIDTH NON-JOINER (\ u200C), které lze použít v identifikátorech za předpokladu, že se nejedná o první znaky identifikátorů.

Úplnou tabulku znaků Unicode naleznete na webu Unicode Table.

Volitelné středníky

Stejně jako u jiných programovacích jazyků používá JavaScript k oddělení instrukcí středník (;). Použití středníků je nezbytné pro jasné vyjádření záměru programátora: bez tohoto oddělovače je možné omylem zaměnit konec jedné instrukce za začátek další a naopak.

Obvykle v JavaScriptu nemusíte mezi příkazy vkládat středník, pokud jsou na samostatných řádcích. (Středník lze také vynechat na konci programu, nebo pokud je dalším tokenem v programu uzavírací složená závorka.)) Mnoho programátorů JavaScriptu používá středníky k explicitnímu označení konců instrukcí, i když to nepotřebují na.

Podívejte se na následující úryvek. Protože jsou tyto dva příkazy na samostatných řádcích, lze první středník vynechat:

Pokud však tyto pokyny napíšete tak, jak je uvedeno níže, je vyžadován první středník:

Komentáře (1)

JavaScript podporuje dva způsoby stylování komentářů. Jakýkoli text mezi znaky // a koncem řádku je považován za komentář a JavaScript jej ignoruje. Jakýkoli text mezi / * a * / je také považován za komentář. Tyto komentáře mohou mít více řádků, ale nelze je vnořit. Následující řádky jsou platné komentáře JavaScriptu:

// Toto je jednořádkový komentář. / * Toto je také komentář * / // a toto je další komentář. / * Toto je další komentář. Rozkládá se přes více linií. * /

Identifikátory a vyhrazená slova

Identifikátor je jen jméno. V JavaScriptu fungují identifikátory jako názvy proměnných a funkcí a také jako štítky pro některé smyčky. JavaScriptové identifikátory musí začínat písmenem, podtržítkem (_) nebo znakem dolaru ($).... Poté mohou následovat jakákoli písmena, čísla, podtržítka nebo znaky dolaru. (Číslice nemůže být prvním znakem, protože pak bude pro interpreta obtížné rozlišit identifikátory od čísel.) Příklady platných identifikátorů:

I my_variable_name v13 _myvar $ str

Z důvodu kompatibility a snadnosti úprav se k vytváření identifikátorů obvykle používají pouze znaky a čísla ASCII. JavaScript však umožňuje použití písmen a číslic z úplné znakové sady Unicode v identifikátorech. To umožňuje programátorům pojmenovávat proměnné ve svých rodných jazycích a používat v nich matematické symboly:

Název var = "Alexander"; var Π = 3,14;

JavaScript si vyhrazuje řadu identifikátorů, které fungují jako klíčová slova v samotném jazyce. Tato klíčová slova nelze v programech použít jako identifikátory. JavaScript si také vyhrazuje některá klíčová slova, která aktuálně nejsou součástí jazyka, ale mohou se stát jeho součástí v budoucích verzích. V tabulce níže jsou uvedena všechna klíčová slova podle kategorií:

Vyhrazená klíčová slova JavaScriptu
Kategorie Klíčová slova
Základní identifikátory break delete function return typeof
case do if switch var
chytit jinde v této prázdnotě
pokračovat ve false instanceof throw while
debugger konečně new true with
výchozí pro null try
Nová klíčová slova ve standardu EcmaScript 5 class const enum export
rozšiřuje import super
Vyhrazená slova v přísném režimu (běžně k dispozici) nářadí nechat soukromé veřejné výnosy
balíček rozhraní chráněný static

JavaScript lze implementovat pomocí operátorů JavaScript které jsou umístěny v HTML skriptu ... / script tagy na webové stránce.

Můžete umístit značky skriptu obsahující vaše JavaScript, kdekoli na vaší webové stránce, ale obecně je dobré je uložit do značek head.

Značka script varuje program prohlížeče, aby začal interpretovat veškerý text mezi těmito značkami jako skript. Jednoduchá syntaxe vašeho JavaScriptu by vypadala takto.

Značka skriptu obsahuje dva důležité atributy -

  • Jazyk – Tento atribut označuje, který skriptovací jazyk používáte. Jeho hodnota bude obvykle javascript. Ačkoli nedávné verze HTML (a XHTML, jeho nástupce) přestaly tento atribut používat.
  • Typ. Tento atribut je nyní doporučen pro specifikaci skriptovacího jazyka, který se má použít, a jeho hodnota by měla být nastavena na "text / javascript".

Váš segment JavaScriptu tedy bude vypadat takto:

Váš první skript JavaScript

Vezměme si příklad pro tisk "Ahoj světe". přidali jsme dodatečný komentář HTML, které obklopuje náš kód JavaScript. Důvodem je uložení našeho kódu z prohlížeče, který nepodporuje JavaScript. Komentář končí "// ->". Zde "//" znamená komentář v JavaScriptu, takže jej přidáváme, abychom zabránili prohlížeči číst konec komentáře HTML jako součást kódu JavaScript. Poté zavoláme funkci document.write, která zapíše řetězec do našeho HTML dokumentu.

Tuto funkci lze použít k psaní textu, HTML nebo obojího. Podívejte se na následující kód.

Tento kód poskytne následující výstup:

Ahoj světe!

Mezery a zalomení řádků

JavaScript ignoruje mezery, tabulátory a nové řádky, které se objevují v programech JavaScript. Ve svém programu můžete volně používat mezery, tabulátory a nové řádky a můžete formátovat a odsazovat své programy úhledným a konzistentním způsobem, aby byl váš kód snadno čitelný a srozumitelný.

Středníky v JavaScriptu

PROTI jednoduché pokyny Za JavaScriptem obvykle následuje středník, jako je tomu v C, C++ a Java. JavaScript vám však umožňuje tento středník přeskočit, pokud umístíte každý ze svých příkazů na samostatný řádek. Například následující kód může být napsán bez středníků.

Ale při formátování na jednom řádku následujícím způsobem musíte použít středníky -

Poznámka. Je dobrou programátorskou praxí používat středníky.

Rozlišování malých a velkých písmen

JavaScript je jazyk citlivý na malá a velká písmena. To znamená, že klíčová slova, proměnné, názvy funkcí a jakékoli další identifikátory musí být vždy zadávány sekvenčním velkým písmenem.

Identifikátory Time a TIME tedy budou JavaScriptu předávat různé hodnoty.

POZNÁMKA. Při psaní názvů proměnných a funkcí v JavaScriptu byste měli být opatrní.