Променливите на JavaScript са чувствителни към главни и малки букви. Синтаксис на JavaScript с прости думи. Декларация на функция и израз на функция

Синтаксисът на JavaScript е набор от правила за това как се създават програмите на JavaScript. В този урок ще разгледаме основните лексикални структури на езика.

Набор от знаци

При писане на програми в JavaScript се използва наборът от символи Unicode. За разлика от 7-битовото кодиране, което е подходящо само за английски език, и 8-битово кодиране, подходящо само за английски и основните западноевропейски езици, 16-битовият Unicode поддържа почти всеки писмен език на планетата. Стандартът ECMAScript v3 изисква реализации на JavaScript да поддържат Unicode версия 2.1 или по-висока, а стандартът ECMAScript v5 изисква реализации да поддържат Unicode версия 3 или по-нова.

Var str = "здравей, свят!"; // използва се латиница var str = "Здравей, свят!"; // Използвайте кирилица

Празни знаци

Белият интервал подобрява четливостта изходен код, но тези символи обикновено не са необходими за функционалността на js скрипта.

Празни знаци Символен код Име Съкращение Описание Escape последователност
U+0009 Хоризонтална табулация Премества позицията за печат до следващия хоризонтален разделител \t
U+000B Вертикален раздел Премества позицията за печат до следващия вертикален табулатор \v
U+000C Страница емисия, смяна на страница Изхвърля текущата страница и започва да печата от следващата \f
U+0020 пространство Разстояние между буквите
U+00A0 Непрекъсваемо пространство Символ, показан в низ като редовно пространство, но не позволява прекъсване на линията в тази точка

В допълнение към празните знаци, знаците за край на реда също се използват за подобряване на четливостта на изходния текст. В някои случаи обаче знаците в края на реда могат да повлияят на изпълнението JavaScript код, тъй като има няколко момента, когато използването им е забранено. Знаците в края на реда също влияят на процеса автоматична инсталацияточка и запетая.

Следните знаци се разпознават от интерпретаторите на JavaScript като знаци в края на реда:

точка и запетая

JavaScript програма (скрипт) е списък от „инструкции“, които се изпълняват от уеб браузър.
В JavaScript изразите обикновено се разделят с точка и запетая (;).

Ако няколко инструкции са разположени на един ред, тогава между тях трябва да се постави точка и запетая (;).

В много случаи JavaScript интерпретира нов ред като разделител на команди за автоматично въвеждане на точка и запетая (ASI) за прекратяване на изрази.
Ако всяка инструкция е поставена на отделен ред, тогава разделителят може да бъде пропуснат:

Една инструкция може да бъде разположена на няколко реда:

В този случай JavaScript изчаква изразът да завърши и следователно не вмъква автоматично „виртуална“ точка и запетая между редовете.

Забележка: Въпреки че точката и запетая не е задължителна в края на изразите, препоръчително е винаги да ги добавяте. Сега това е правило, което следват всички големи проекти.

Това правило предотвратява някои грешки, като незавършено въвеждане, и също така ви позволява да компресирате код чрез премахване на бяло пространство. Компресирането на код без точка и запетая води до синтактични грешки. В допълнение, наличието на точки и запетая предотвратява влошаване на производителността, тъй като анализаторите се опитват да коригират предполагаеми грешки чрез добавяне на липсващи точки и запетая.

Чувствителност към главни и малки букви

Програмите на JavaScript са написани с помощта на набора от знаци Unicode, който включва набори от знаци ASCII и Latin-1 и се поддържа от почти всички езици и платформи.
В JavaScript всички елементи, включително имена на променливи, функции и оператори, са чувствителни към главни и малки букви и винаги трябва да съдържат един и същ набор от главни и малки букви. малки букви. Например ключовата дума while трябва да бъде въведена като "while", а не "While" или "WHILE".

По същия начин num, NUM и Num са три различни променливи:

Коментари

Коментарите ви позволяват да маркирате фрагмент от програма, който не се изпълнява от JavaScript интерпретатора, а служи само за обяснение на съдържанието на програмата.
Коментарите в JS могат да бъдат едноредови или многоредови.

Едноредовите коментари започват с двойна наклонена черта // . Текстът се счита за коментар до края на реда:

Многоредовият коментар започва с наклонена черта и звездичка (/*) и завършва с тях в обратен ред (*/). По този начин можете да коментирате един или повече редове:

Съвет: Не пренебрегвайте коментарите във вашите кодове. Те ще ви бъдат полезни при отстраняване на грешки и поддръжка на програми. На етапа на разработка може да е по-добре да коментирате ненужен фрагмент от програма, отколкото просто да го изтриете. Ами ако трябва да се възстанови?

Идентификатори

Идентификаторът е поредица от букви, цифри, долна черта (_) и знаци за долар ($). Числото не може да бъде първият знак на идентификатор, тъй като би затруднило интерпретатора на JavaScript да различи идентификатори от числа. Идентификаторите действат като имена на променливи, функции, свойства на обекти и др.
За съвместимост и лесно редактиране, само ASCII символи и числа обикновено се използват за съставяне на идентификатори. В ECMAScript v3 обаче идентификаторите могат да съдържат букви и цифри от пълен комплект Unicode знаци. Това позволява на програмистите да назовават променливи на родния си език и да използват математически символи в тях:

Var име = "Макс"; var Π = 3.14;

Исторически програмистите са използвали различни начиникомбиниране на множество думи за запис на идентификатори. Днес има два установени негласни стила: camelCase и snake_case.
В JavaScript най-популярният стил на именуване на многословни идентификатори е нотацията с камилски главни букви. Това означава, че първата буква е малка, а първите букви на всички следващи думи са главни, например:

Var firstSecond; var myCar = "audi"; var doSomethingImportant;

Забележка: В JavaScript комбинирането на няколко думи за запис на идентификатори с помощта на тирета не е разрешено. Те са запазени за математически изваждания.

Забележка: В JavaScript ключовите думи, запазените думи и стойностите true, false и null не могат да бъдат идентификатори.

Ключови думи и запазени думи

Стандартът ECMA-262 дефинира набор от ключови думи, които не могат да се използват като идентификатори. Запазените думи имат специфично значение в JavaScript, защото са част от синтаксиса на езика. Използването на запазени думи ще доведе до грешка при компилиране при зареждане на скрипта.

Запазени ключови думи според ECMAScript® 2015 версия
  • прекъсвам
  • улов
  • клас
  • конст
  • продължи
  • дебъгер
  • по подразбиране
  • изтрий
  • износ
  • се простира
  • накрая
  • функция
  • импортиране
  • instanceof
  • връщане
  • супер
  • превключвател
  • хвърлям
  • typeof
  • докато
  • добив
Ключови думи, запазени за бъдеща употреба

Освен това ECMA-262 съдържа набор от запазени думи, които също не могат да се използват като идентификатори или имена на свойства. В момента няма функционалност зад тях, но може да се появи в бъдещи версии:

  • чакам

В строг режим следните думи се добавят към този списък:

  • инструменти
  • пакет
  • защитени
  • статичен
  • интерфейс
  • частен
  • публичен
Запазени ключови думи в ECMAScript® версии 1 до 3
  • абстрактно
  • булево
  • двойно
  • окончателен
  • плавам
  • роден
  • кратко
  • синхронизирани
  • преходен
  • летлив

В 5-то издание на ECMAScript правилата за използване на ключови думи и запазени думи са леко променени. Както и преди, те не могат да бъдат идентификатори, но сега могат да се използват като имена на свойства в обекти. Въпреки това, за да се осигури съвместимост с минали и бъдещи издания на ECMAScript, все още е най-добре да не се използват ключови думи и запазени думи като идентификатори и имена на свойства.

Резултати
  • Интерпретаторът на JavaScript игнорира всяко празно пространство, което може да присъства между езиковите конструкции, и третира програмния текст като непрекъснат поток от код.
    Освен това, JavaScript също в по-голямата си част игнорира символите за нов ред. Следователно интервалите и символите за нов ред могат да се използват без ограничения в изходния код на програмите, за да се форматират и да им се придаде четим вид.
  • Пропускането на точка и запетая не се счита за добра практика в програмирането и затова е препоръчително да развиете навик за използването им.
  • В JavaScript всички елементи, включително имена на променливи, функции и оператори, са чувствителни към главни и малки букви и винаги трябва да съдържат един и същи набор от главни и малки букви.
  • Не пренебрегвайте коментарите във вашите кодове. Те ще ви бъдат полезни при отстраняване на грешки и поддръжка на програми. Не се притеснявайте за увеличаване на размера на кода, защото... Има инструменти за компресиране на JavaScript, които лесно премахват коментарите, когато бъдат публикувани.
  • Идентификаторите действат като имена на променливи, функции, свойства на обекти и се състоят от поредица от букви, цифри, долна черта (_) и знаци за долар ($).
  • Ключовите думи на JavaScript, използвани за обозначаване на елементи от езиковия синтаксис, както и други думи, запазени за бъдеща употреба, не могат да се използват като имена на променливи, функции или обекти.

JavaScript може да се реализира с помощта на изрази на JavaScript, които се поставят в HTML таговескрипт ... /скрипт на уеб страница.

Можете да поставите скриптови тагове, съдържащи вашия JavaScript навсякъде на вашата уеб страница, но обикновено се препоръчва да го съхранявате в head тагове.

Тагът скрипт предупреждава програмата на браузъра да започне да интерпретира целия текст между тези тагове като скрипт. Простият синтаксис за вашия JavaScript ще изглежда така.

JavaScript код

Тагът на скрипта съдържа два важни атрибута -

  • Език - Този атрибут показва какъв скриптов език използвате. Обикновено стойността му ще бъде javascript. Въпреки че последните версии на HTML (и XHTML, негов наследник) са спрели да използват този атрибут.
  • Тип. Този атрибут вече се препоръчва за указване на използвания скриптов език и стойността му трябва да бъде зададена на "text/javascript".

Така че вашият JavaScript сегмент ще изглежда така:

JavaScript код

Вашият първи JavaScript скрипт

Да вземем пример за печат " Здравей свят" Добавихме допълнителен HTML коментар, който обгражда нашия JavaScript код. Това е, за да запазим нашия код от браузър, който не поддържа JavaScript. Коментарът завършва с "// ->". Тук "//" означава коментар в JavaScript, така че добавяме това, за да попречим на браузъра да прочете края на HTML коментара като част от JavaScript кода. След това извикваме функцията document.write, която записва низ в нашия HTML документ.

Тази функция може да се използва за писане на текст, HTML или и двете. Разгледайте следния код.

Този код ще даде следния резултат:

Здравей свят!

Интервали и прекъсвания на редове

JavaScript игнорира интервали, раздели и нови редове, които се появяват в програмите на JavaScript. Можете свободно да използвате интервали, раздели и нови редове във вашата програма и можете да форматирате и правите отстъпи в програмите си по чист и последователен начин, което прави кода ви лесен за четене и разбиране.

Точка и запетая в JavaScript

IN прости инструкциив JavaScript обикновено е последвано от точка и запетая, както в C, C++ и Java. JavaScript обаче ви позволява да пропуснете тази точка и запетая, ако поставите всяко от вашите твърдения на отделен ред. Например, следният код може да бъде написан без точка и запетая.

Но когато форматирате в един ред като този, трябва да използвате точка и запетая -

Забележка. Добра практика в програмирането е да използвате точка и запетая.

Чувствителност към главни и малки букви

JavaScript е език, чувствителен към малки и големи букви. Това означава, че ключовите думи, променливите, имената на функциите и всякакви други идентификатори трябва винаги да се въвеждат с последователна главна буква.

Така че идентификаторите Time и TIME ще предадат различни значения на JavaScript.

ЗАБЕЛЕЖКА. Трябва да внимавате, когато пишете имена на променливи и функции в JavaScript.

Синтаксис на JavaScript

От 1995 г. JavaScript измина дълъг път от скромен компонент на браузъра Netscape до днешните високопроизводителни JIT интерпретатори. Изглежда, че само преди пет години разработчиците са били зашеметени от появата на Ajax, а сега сложните JavaScript приложения са достигнали обеми от стотици и хиляди редове код.

Миналата година видяхме появата на ново поколение JavaScript приложения, които не изглеждат по-различно от настолните приложения, невероятен напредък в уеб технологията. Изчезнаха бавните заявки за страници всеки път, когато потребител взаимодейства с приложението. JavaScript двигателите са станали толкова мощни, че е възможно да се запази състояние от страна на клиента, което значително ускорява реакцията на приложението и подобрява качеството на неговата работа.

Ако знаете други езици за програмиране, може да ви е полезно да знаете, че JavaScript е динамичен, нетипизиран и интерпретиран език за програмиране на високо ниво, който е много подходящ за обектно-ориентирани и функционални стилове на програмиране. JavaScript наследява своя синтаксис от езика Java, своите първокласни функции от езика Scheme и неговия базиран на прототип механизъм за наследяване от езика Self. Но не е необходимо да знаете всички тези езици или да сте запознати с тяхната терминология, за да научите JavaScript.

В тази статия ще разгледаме основните лексикални структури на езика.

Символи

При писане на програми в JavaScript се използва наборът от знаци Unicode. Unicode е надмножество на ASCII и Latin-1 и поддържа почти всеки писмен език на планетата. Стандартът ECMAScript 3 изисква реализации на JavaScript да поддържат Unicode версия 2.1 или по-нова, а стандартът ECMAScript 5 изисква реализации да поддържат Unicode версия 3 или по-нова.

Чувствителност към главни и малки букви

JavaScript е език, чувствителен към малки и големи букви. Това означава, че ключовите думи, имената на променливите и функциите и всички други езикови идентификатори трябва винаги да съдържат един и същ набор от главни и малки букви.

Например, ключовата дума while трябва да бъде въведена като "while", а не "While" или "WHILE". По същия начин myvar, Myvar, MyVar и MYVAR са имената на четири различни променливи. Имайте предвид обаче, че езикът за маркиране на HTML (за разлика от XHTML) не е чувствителен към главни и малки букви. Тъй като HTML и клиентският JavaScript са тясно свързани, това разграничение може да бъде объркващо. Много обекти на JavaScript и техните свойства имат същите имена като тагове и атрибути HTML езиккоито представляват. Въпреки това, докато в HTML тези тагове и атрибути могат да бъдат въведени при всички случаи, в JavaScript те обикновено трябва да бъдат въведени с малки букви.

Например, атрибутът onclick на манипулатор на събитие най-често се посочва като onClick в HTML, но в кода на JavaScript (или XHTML документ) той трябва да бъде обозначен като onclick.

Интервали, знаци за нов ред и контролни знаци за форматиране

JavaScript игнорира интервалите, които може да присъстват между токените в програмата. Освен това JavaScript до голяма степен игнорира новите редове. Следователно интервалите и новите редове могат да се използват без ограничения в изходния код на програмите за форматиране и придаване на четим вид.

В допълнение към обикновения знак за интервал (\u0020), JavaScript допълнително разпознава следните знаци като интервал: раздел (\u0009), вертикален раздел (\u000B), канал за форматиране (\u000C), непрекъсващ интервал (\u00A0), маркер за ред на байтове (\uFEFF), както и всички Unicode знаци, класифицирани като Zs.

Следните знаци се разпознават като знаци в края на реда от интерпретаторите на JavaScript: подаване на ред (\u000A), връщане на каретка (\u000D), разделител на ред (\u2028) и разделител на абзаци (\u2029). Последователността от символи за връщане на каретка и за подаване на ред се интерпретира като символ за завършване на един ред.

Контролните знаци за Unicode формат (категория Cf), като МАРКА ОТ ДЯСНО НАЛЯВО (\u200F) и МАРКИРОВКА ОТ ЛЯВО НАДЯСНО (\u200E), контролират визуалното представяне на текста, в който се появяват. Те са от голямо значение за правилен дисплейтекст на някои езици и са валидни в JavaScript коментари, низови литерали и регулярни изразни литерали, но не и в идентификатори (като имена на променливи), дефинирани в JavaScript програми. Изключенията са ZERO WIDTH JOINER (\u200D) и ZERO WIDTH NON-JOINER (\u200C), които могат да се използват в идентификатори, при условие че не са първите знаци на идентификаторите.

Можете да видите пълната таблица с Unicode знаци на уебсайта Unicode Table.

Точка и запетая по избор

Подобно на други езици за програмиране, JavaScript използва точка и запетая (;), за да разделя изразите един от друг. Използването на точка и запетая е от съществено значение, за да стане ясно намерението на програмиста: без този разделител краят на една инструкция може да бъде сбъркан с началото на следващата и обратно.

Обикновено в JavaScript не е нужно да поставяте точка и запетая между изразите, ако са на различни редове. (Точката и запетая може също да бъде пропусната в края на програмата или ако следващият токен в програмата е затваряща фигурна скоба.) Много програмисти на JavaScript използват точка и запетая, за да маркират изрично краищата на изрази, дори когато не са необходими.

Разгледайте следния фрагмент. Тъй като двата израза са на различни редове, първата точка и запетая може да бъде пропусната:

Въпреки това, ако тези инструкции са написани, както е показано по-долу, първата точка и запетая става задължителна:

Коментари

JavaScript поддържа два начина за форматиране на коментари. Всеки текст между знаците // и края на реда се третира като коментар и се игнорира от JavaScript. Всеки текст между знаците /* и */ също се счита за коментар. Тези коментари могат да обхващат няколко реда, но не могат да бъдат вложени. Следните редове са валидни JavaScript коментари:

// Това е коментар от един ред.

/* Това също е коментар */ // и това е друг коментар.

/* Това е друг коментар.

Разположен е в няколко реда.

*/

Идентификатори и запазени думи

JavaScript запазва редица идентификатори, които действат като ключови думи за самия език. Тези ключови думи не могат да служат като идентификатори в програмите. JavaScript също запазва някои ключови думи, които в момента не са част от езика, но които може да станат част от него в бъдещи версии. Таблицата по-долу изброява всички ключови думи по категории:

Запазени JavaScript ключови думи Категория Ключови думи
Основни идентификатори прекъсване изтриване функция връщане typeof
case do if switch var
хванете друго в тази празнота
продължи false instanceof throw while
дебъгер най-накрая нов верен с
по подразбиране за нулев опит
Нови ключови думи в стандарта EcmaScript 5 клас const enum експорт
разширява вноса супер
Запазени думи в строг режим (достъпни са в нормален режим) инструменти позволяват на частния публичен добив
интерфейсен пакет защитен статичен

Синтаксисът на JavaScript е набор от правила за това как се изграждат програмите на JavaScript.

JavaScript програми

Компютърната програма е списък от „инструкции“, които трябва да бъдат „изпълнени“ от компютъра.

На език за програмиране тези програмни инструкциисе наричат ​​твърдения.

JavaScript е език за програмиране.

JavaScript изразите са разделени с точка и запетая.

HTML, JavaScript програмите могат да се изпълняват с помощта на уеб браузър.

JavaScript отчети

Изявленията на JavaScript се състоят от:

Стойности, оператори, изрази, ключови думи и коментари.

JavaScript стойности

Синтаксисът на JavaScript дефинира два типа стойности: фиксирани стойности и променливи стойности.

Фиксираните стойности се наричат ​​литерали.

Стойностите на променливите се наричат ​​променливи.

JavaScript литерали

Най-важните правила за писане на фиксирани стойности са:

Числата се записват със или без десетични знаци:

Редове текст, написани в двойни или единични кавички:

JavaScript променливи

В езика за програмиране променливите се използват за съхраняване на стойности на данни.

JavaScript използва ключовата дума var за деклариране на променливи.

Знакът за равенство се използва за присвояване на стойности на променливи.

В този пример x е дефиниран като променлива. Тогава на x се присвоява (даде) стойността 6:

JavaScript оператори

JavaScript използва оператора за присвояване (=), за да присвои стойности на променливи: JavaScript използвааритметични оператори

(+ - * /), за да изчислите стойности:

JavaScript изрази

Изчислението се нарича оценка.

Например 5 * 10 приема стойност 50:

Изразите могат също да съдържат променливи стойности:

Ценностите могат да бъдат различни видове, като числа и низове.

Например "Джон" + "," + "Доу" приема стойността "Джон Доу":

JavaScript ключови думи

Ключовите думи на JavaScript се използват за определяне на действията, които трябва да бъдат извършени.

Ключовата дума var казва на браузъра да създаде нова променлива:

JavaScript коментари

Не всички изрази на JavaScript ще бъдат "изпълнени".

Кодът след двойни наклонени черти // или между /* и */ се третира като коментар.

Коментарите се игнорират и няма да бъдат изпълнени:

JavaScript идентификатори

Идентификаторите са имена.

В JavaScript идентификаторите се използват за именуване на променливи (и ключови думи, както и функции и етикети).

Правилата за законните имена са едни и същи в повечето езици за програмиране.

В JavaScript първият знак трябва да е буква, долна черта (_) или знак за долар ($).

Следващите знаци могат да бъдат букви, цифри, долна черта или знаци за долар.

Числата не са разрешени като първи знак.
По този начин JavaScript може лесно да различи идентификатори от числа.

JavaScript е чувствителен към главни и малки букви

Всички JavaScript идентификатори са чувствителни към главни и малки букви.

Променливите LastName и LAST NAME са две различни променливи.

JavaScript не интерпретира VAR или Var като ключова думавар.

JavaScript и Camel Case

Исторически програмистите са използвали три начина за комбиниране на множество думи в едно име на променлива:

Тирета:

име, фамилия, главна карта, междуградски.

Тиретата не са разрешени в JavaScript. Предназначен е за изваждане.

Долна черта:

first_name, last_name, master_card, inter_city.

Калъф за камила:

Име, Фамилия, MasterCard, InterCity.

В езиците за програмиране, особено в JavaScript, камилският регистър често започва с малка буква:

име, фамилия, masterCard, interCity.

Набор от символи на JavaScript

JavaScript използва набора от знаци Unicode.

Unicode покрива (почти) всеки символ, пунктуация и глиф в света.

Връзка