Синтаксис языка

1. Введение

При написании кода, важно не просто знать какой символ или конструкцию можно использовать, но в первую очередь необходимо понимать терминологию и составляющие исходного кода. В этой секции нам не важно понимание как что работает, мы лишь познакомимся с терминологией и синтаксисом языка.

2. Инструкция

Инструкция (statement) — это связанный набор слов и символов из синтаксиса языка, которые объединяются, чтобы выразить одну идею, одну инструкцию для машинa = b * 2;

a = b * 2;

Это пример инструкции. В JavaScript можно различить инструкцию по точке с запятой в конце. Точку с запятой в данном случае можно сравнить с точкой в конце предложения вашего родного языка, она символизирует о конце предложения.

  • a и b — переменные (как в алгебраическом уравнении), это хранилища данных, которые использует программа. Переменная состоит из идентификатора (имени) и связанного с ним значения.

  • 2 — просто число. Это называется значением литерала (literal value), так как оно не хранится в переменной.

  • = и * — операторы, производят действия над значениями и переменными.

Представим, что переменная b уже хранит число 10. Тогда эта инструкция говорит машине:

  • Пойди найди переменную с идентификатором b и спроси, какое у нее сейчас значение.

  • Подставь значение переменной b в утверждение на место b

  • Умножь 10 на 2

  • После чего, запиши результат вычисления выражения правой части в переменную a.

3. Выражение

Инструкции состоят из частей, как в любом языке предложения состоят из фраз и эти фразы называются выражениями.

Выражение (expression) — ссылка на переменную или значение, или на набор переменных и значений в сочетании с операторами.

[ [a] = [ [b] * [2] ] ]

Инструкция из примера выше содержит 5 выражений, для визуализации выделены квадратными скобками (это не синтаксис языка):

  • [2] — выражение значения литерала.

  • [b]и[a] — выражения переменной, означают необходимость подставить значение переменной, но только в том случае, если переменная стоит в правой части выражения присваивания.

  • [b * 2] — арифметическое выражение умножения.

  • [a = b * 2] — выражение присваивания. В нашем случае указывает на необходимость вычисления правой части выражения и присваивания результата переменной a в левой части выражения.

Так же есть выражения вызова, выражения сравнения и т. д. Мы не будем сейчас рассматривать их все, нам важно понимать из каких частей состоит исходный код и как правильно его читать.

4. Интерфейс

Когда мы подходим к автомату с кофе или садимся за руль автомобиля, существует некоторый набор элементов управления, с которым можно взаимодействовать. В программировании это называется интерфейс.

Интерфейс — это набор свойств и методов сущности, доступных для использования.

Сейчас важен именно синтаксис и терминология, так как они идентичны для любых данных.

4.1. Свойство

У нас с вами есть свойства: рост, вес, цвет глаз, то есть какие-то описательные характеристики. Так же и у данных есть свойства, к примеру у строки есть свойство ее длины. Синтаксис обращения к свойству очень простой.

сущность.имя_свойства
'JavaScript is awesome'.length;

4.2. Метод

Метод - это вызов действия, например присесть или плавать, то есть какая-то активная операция. Так же и у данных есть свои методы, например можно добавить или удалить элементы из коллекции, перевести строку в разный регистр и т. д. Синтаксис вызова метода очень похож на обращение к свойству, но в конце добавляется пара скобок.

сущность.имя_метода()
'JavaScript is awesome'.toUpperCase();

5. Строгий режим

Строгий режим — новая возможность в спецификации ECMAScript 5, которая позволяет переводить скрипт в режим полного соответствия современному стандарту. Это предотвращает определенные ошибки, такие как использование небезопасных конструкций.

Для того чтобы перевести скрипт в строгий режим, достаточно указать директиву в начале js-файла. Всегда пишите код в строгом режиме.

'use strict';
// дальше идет весь код файла

Strict mode на MDN

Last updated