Определение синтаксиса
Синтаксис - это набор правил, следуя которым отдельные слова и символы превращаются в код программы.
Как, например, в русском языке существуют правила оформления слов и предложений, также и в языке программирования существуют правила оформления инструкций и выражений.
Инструкции в JavaScrtipt
Инструкция - участок исполняемого кода, который состоит из значений, выражений, идентификаторов, ключевых слов, операторов и комментариев.
Инструкцию можно сравнить с предложением в русском языке. Каждая инструкция как и предложение имеет начало и конец, несет в себе определенную смысловую нагрузку, а также имеет специальный символ - разделитель, по наличию, которого можно судить о конце одной инструкции и начале другой. Если в русском языке в качестве разделителя предложений выступает символ - .
(точка), то в JavaScritp для разделения инструкций используют символ - ;
(точка с запятой).
Если Вы случайно забудете поставить в конце инструкции точку с запятой, то в большинстве случаях интерпретатор JavaScript не выдаст сообщения об ошибке, т.к. интерпретатор, при чтении инструкции способен самостоятельно замечать ее конец, а делает он это когда встречает на своем пути символ перевода строки. Однако, не стоит полагаться на эту особенность языка, т.к. на одной строке может находится несколько инструкций и, если не использовать разделитель, то интерпретатор примет их за одну инструкцию и создаст ошибку. В связи с этим настоятельно рекомендуется всегда вставлять символ - ;
в конце каждой инструкции. Это избавит Вас от возможных проблем с кодом в будущем.
1 2 |
var berry = "cherry"; //Это инструкция document.body.innerHTML = berry; //Это тоже инструкция |
Часто несколько инструкций объединяют в блоки с помощью символов - {}
. Инструкции находящиеся внутри блока, выполняются последовательно и независимо от других инструкций вне блока.
1 2 3 4 5 6 |
// Определение блока инструкций { var width = 20, height = 30; var perimetr = (width + height) * 2; } |
Блоки являются набором инструкций и могут входить в другие блоки, тем самым создавая иерархию их выполнения.
Интерпретатор JavaScript хорошо распознает конец блока инструкций поэтому ставить точку с запятой после закрывающей скобки не обязательно.
Блоки сами по себе вряд ли будут полезны, поэтому они очень часто передаются различным директивам, которые можно вызвать для выполнения в любом месте программы, например с помощью функций, условных конструкций и т.п.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
function comparison(){ // блок инструкций, которые выполнятся при вызове функции var a = 2, b = 3; if(a > b){ // блок инструкций,которые выполнятся при истинности условия var str = "2 > 3"; alert(str); } else{ // блок инструкций,которые выполнятся при ложности условия var str = "3 > 2"; alert(str); } } comparison(); // Вызов функции, в результате чего выполнится не одна, а целый блок инструкций |
Литералы в JavaScript
Литералом называют фиксированное, нигде не хранящиеся значение. Наиболее часто используемые литералы - строки и числа.
1 2 3 4 5 6 |
var number = 45; // 45 - литерал целого числа var decimal = 45.4; // 45.4 - литерал десятичного числа var str1 = "Text"; // Text - строковый литерал в двойных кавычках var str2 = 'Text'; // Text - строковый литерал в одинарных кавычках var arr = [1,2,3]; // [1,2,3] - литерал массива var obj = {option: "value"}; // {option: "value"} - литерал объекта |
Переменные в JavaScript
Переменные - это сущность, которая хранит в себе одно или несколько значений, которые можно изменить. Переменные в JavaScript задаются с помощью ключевого слова var
, после которого идет имя переменной (идентификатор), оператор присваивания =
и ее значение.
1 2 |
var number = 234; // переменная number содержит в себе числовое значение 234 var number = 98; // переопределение переменной number теперь она содержит число 98 |
Операторы в JavaSctipt
В JavaScript существуют различные типы операторов как, например, оператор присваивания =
или арифметические операторы ( +
, -
, /
, *
), а также многие другие.
1 2 3 4 5 |
var num = 45; var str = "Hello "; num + 2 * 5; // => 55 (12 + 4) / 4; // => 4 str + "47"; // => "Hello 47" |
Ключевые слова в JavaScript
В JavaScript есть слова, которые не могут быть использованы в качестве имен переменных и функций. Например, ключевое слово var
используется для определения переменной или function
для определения функции.
1 |
var variable = "value"; |
Далее представлен полный список ключевых слов в JavaScript.
break
delete
case
do
catch
else
continue
false
debugger
finally
default
for
function
typeof
if
switch
var
in
this
void
instanceof
throw
while
new
true
with
null
try
class
const
enum
export
extends
import
super
implements
let
private
public
yield
interface
package
protected
static
Комментарии в JavaScript
Некоторые участки кода в JavaScript могут не выполнятся интерпретатором. Они необходимы для описания кода или временного сокрытия ненужного кода.
1 2 |
var n = 45; //Этот код выполнится интерпретатором //var s = "45"; //Этот код интерпретатор проигнорирует |
Идентификаторы в JavaScript
Идентификаторы - это имена которые используются для обозначения названия переменных, функций и ключевых слов.
Название идентификатора может начинаться со знака _
(нижнее подчеркивание), буквы или знака $
(доллар), остальная часть имени может состоять из цифр, букв, знаков _
и $
.
Название идентификатора не может начинаться с цифры, это нужно для того, чтобы интерпретатору было проще различать идентификаторы и числовые значения.
1 2 3 |
var number = 123; // number - идентификатор переменной function show(){}; // show - идентификатор функции var 1item = 1; // 1item - неверный идентификатор, данный код приведет к ошибкам |
Чувствительность к регистру
В JavaScript все идентификаторы (Переменные) являются чувствительными к регистру. Например имена Price
, price
и PRICE
будут разными идентификаторами. Тоже самое относится и к ключевым словам - использование Var
или VAR
вместо var
приведет к ошибкам.
1 2 3 4 |
// Три совершенно разных переменных var price = "$45"; var Price = "$73"; var PRICE = "$231"; |
При определении идентификаторов рекомендуется использовать стиль CamelCase (верблюжья нотация), т.е. каждое новое слово, кроме первого, начинается с заглавной буквы.
1 2 3 |
var firstName = "Nicola"; var lastName = "Tesla"; var birthDate = "10.07.1856"; |