Слайд 2“Это формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор
![“Это формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-1.jpg)
лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением.”
Слайд 3Цель создания языка: добавить страницам динамики, обеспечить взаимодействие с пользователем.
Так как разработкой
![Цель создания языка: добавить страницам динамики, обеспечить взаимодействие с пользователем. Так как](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-2.jpg)
веб-сайтов в то время нередко занимались не программисты, то язык должен был быть легким.
Язык Javascript появился в 1995 году в браузере NetScape Navigator.
Рабочее название Livescript
Слайд 4ECMAScript - это название стандартного языка, разработанного ECMA, из первоначальной реализации Javascript.
Javascript,
![ECMAScript - это название стандартного языка, разработанного ECMA, из первоначальной реализации Javascript.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-3.jpg)
JScript, TypeScript - реализации данного стандарта
ECMAscript выходит ежегодно, первые пакеты обновления назывались ES1, ES2, ES3, ES4, ES5, новые выпуски (начиная с 2015 года) получили название ES2015, ES2016, ES2017 (аббревиатура ES + год выпуска; ES6 == ES2015);
Слайд 5Компиляция – это когда исходный код программы, при помощи специального инструмента, другой
![Компиляция – это когда исходный код программы, при помощи специального инструмента, другой](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-4.jpg)
программы, которая называется «компилятор», преобразуется в другой язык, как правило – в машинный код. Этот машинный код затем распространяется и запускается. При этом исходный код программы остаётся у разработчика.
Интерпретация – это когда исходный код программы получает другой инструмент, который называют «интерпретатор», и выполняет его «как есть».
Javascript является интерпретируемым языком.
Слайд 61. Единственный язык, который работает в браузере.
2. Входит в 10 самых популярных
![1. Единственный язык, который работает в браузере. 2. Входит в 10 самых](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-5.jpg)
языков по индексу TIOBE.
3. Можно разрабатывать и серверные приложения, и десктопные приложения.
4. Frontend фреймворки, которые захватывают интернет.
Слайд 9Для подключения используется тег script. Тег работает 2-мя способами:
1. Код пишется напрямую
![Для подключения используется тег script. Тег работает 2-мя способами: 1. Код пишется](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-8.jpg)
в теге script
2. Код пишется в файле, путь к которому указывается с помощью атрибута src
Слайд 11Алгоритм - совокупность последовательных шагов, схема действий, приводящих к желаемому результату.
Алгоритм -
![Алгоритм - совокупность последовательных шагов, схема действий, приводящих к желаемому результату. Алгоритм](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-10.jpg)
основа программирования, потому что по сути на языке программирования описываются алгоритмы.
Слайд 121. Алгоритм состоит из конечного числа шагов.
2. Алгоритм приводит к результату.
3. Алгоритм
![1. Алгоритм состоит из конечного числа шагов. 2. Алгоритм приводит к результату.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-11.jpg)
решает набор однотипных задач.
4. Алгоритм должен быть однозначно понятным для исполнителя.
Слайд 13В программировании мы почти никогда не работаем с конкретными данными, это почти
![В программировании мы почти никогда не работаем с конкретными данными, это почти](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-12.jpg)
всегда данные, полученные от пользователя или других источников, которые мы должны обработать каким-то определенным образом, чтобы выдать ответ.
ОЧЕНЬ ВАЖНО понимать, что мы точно не знаем, что у нас есть, и нам нужно это обработать.
Слайд 14Оператор — это элемент языка, задающий полное описание действия, которое необходимо выполнить.
![Оператор — это элемент языка, задающий полное описание действия, которое необходимо выполнить.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-13.jpg)
Каждый оператор представляет собой законченную фразу языка программирования и определяет некоторый вполне законченный этап обработки данных.
Операция — конструкция в языках программирования, аналогичная по записи математическим операциям, то есть специальный способ записи некоторых действий.
Слайд 15Комментарии используется для добавления текста, который будет игнорироваться при выполнении программы.
Обычно комментарии
![Комментарии используется для добавления текста, который будет игнорироваться при выполнении программы. Обычно](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-14.jpg)
используются для пометок в коде или для отключения части кода.
Комментарии в JS
// однострочный комментарий
/* многострочный комментарий */
Слайд 16Переменные и типы данных. Операции
![Переменные и типы данных. Операции](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-15.jpg)
Слайд 17Переменные - это область оперативной памяти, в которой сохраняются значения в процессе
![Переменные - это область оперативной памяти, в которой сохраняются значения в процессе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-16.jpg)
работы программы.
Переменным нужно задавать имена. Имена переменных подчиняются определенным правилам:
Нельзя задавать имя переменным занятое другими командами
Можно использовать цифры, но нельзя начинать название переменных с цифры
Нельзя использовать спецсимволы, кроме _ и $
Слайд 18Для названия переменных существуют и рекомендации.
Для названия переменных использовать слова, описывающие суть
![Для названия переменных существуют и рекомендации. Для названия переменных использовать слова, описывающие](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-17.jpg)
переменных
Если в названии переменных присутствуют несколько слов, то использовать верблюжий стиль: слова не отделяются пробелами, каждое новое слово начинается с большой буквы.
Пример: myVariableName
Слайд 19Создание переменных начинается с ключевого слова let.
let myVar;
Также есть вариант с var,
![Создание переменных начинается с ключевого слова let. let myVar; Также есть вариант](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-18.jpg)
но это устаревший способ, о нём поговорим позднее.
Слайд 20Оператор присваивания служит для записи значения в переменные.
let a = 140;
В левой
![Оператор присваивания служит для записи значения в переменные. let a = 140;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-19.jpg)
части от знака присваивания находится переменная, в которую запишется значения справа от знака присваивания.
Присваивание значение переменным доступно в любой момент в работе программы (скрипта).
Инициализация переменной - получение переменной её первого значения.
Слайд 21Команда для вывода значения в консоль. Значение может задаваться вручную (текст в
![Команда для вывода значения в консоль. Значение может задаваться вручную (текст в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-20.jpg)
кавычках), но может и передаваться в виде переменных.
Консоль открывается в инструментах разработчика.
В консоли также записываются все ошибки.
Слайд 22При задании значения переменной в JS, для этой переменной определяется тип данных.
![При задании значения переменной в JS, для этой переменной определяется тип данных.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-21.jpg)
Тип данных указывает на способ хранения переменной в оперативной памяти, а также на возможные операции с этими переменными.
Javascript является языком с динамической типизацией, то есть тип данных не указывается в момент создания переменной, а определяется по значению переменной. Также в Javascript переменная может поменять свой тип в процессе работы скрипта.
Слайд 23number - числовой тип данных
string - строковый тип данных, для хранения текста
boolean
![number - числовой тип данных string - строковый тип данных, для хранения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-22.jpg)
- булевский или логический тип данных, имеет два возможных варианта: true или false
object - объект, сложная структура
Также предусмотрено два специальных значения:
undefined - значение неопределено
null - значение отсутствует
Слайд 24Сложение +
Вычитание -
Умножение *
Деление /
Нахождение остатка от деления -
![Сложение + Вычитание - Умножение * Деление / Нахождение остатка от деления -](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-23.jpg)
Слайд 25Унарные операторы выполняют действия над одним операндом (значением)
Инкремент - увеличение значения на
![Унарные операторы выполняют действия над одним операндом (значением) Инкремент - увеличение значения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/982425/slide-24.jpg)
1. Префиксный: ++a, постфиксный a++
Декремент - уменьшение значения на 1. Префиксный: --a, постфиксный a--
В постфиксной форме сначала выполняться все остальные действия над переменной, а потом произойдёт увеличение.
В префиксной – наоборот.