Фронтенд разработка на языке JavaScript. / Переменные. Математические операции. / Ввод данных. Арифметика.
Переменные. Математические операции.
Программа Hello World.
Создаем html страницу index.html в новой папке.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Заголовок</title>
</head>
<body>
<script>
alert('Hello world!')
</script>
</body>
</html>
Запускаем в браузере.
Принимаем данные от пользователя, присваиваем их переменной и выводим на экран.
var something = prompt('Вводи что нибудь')
alert(something)
Присваивание.
x=y=z=1
При цепочном присваивание вначале присваивается z=1 и потом значение 1 выталкивается влево и присваевается переменной y и далее по цепочке.
Операторы и операнды.
Оператор - специальный символ, обозначающий то или иное вычисление. Это конструкция языка не имеет возвращаемого значения.
Операнд - то над чем работает оператор (значения)
Операция - это то, что имеет возвращаемое значение.
Таким образом присваивание это и оператор и операция одновременно!
Арифметические операторы.
Сложение x + y
Вычитание x – y
Умножение x * y
Деление x / y
Остаток от деления x%y
Возведение в степень x**y
Инверсия (смена знака) -x
Инкремент (увеличение на 1) x++ или ++x
Декремент (уменьшение на 1) x– или –x
При опрерациях учитывается приоритет и работают скобочки.
Операции отношений (сравнение).
Не строгое равно ==
Строгое равно ===
При строгом сравнении учитывается и тип переменной.
Поэтому при сравнении строки и числа например
2 === '2'
Возвратиться false, хотя при не строгом сравнении
2 == '2'
Вернет true
Больше >
Меньше <
Больше или равно >=
Меньше или равно <=
Логические операторы.
Применяются в основном для комбинирования нескольких условий.
Логическое И
age > 10 && age < 30
login=="user" && password=="MySecret"
Логическое ИЛИ
age == 10 || age == 12
Комбинация.
(login=="user" || email=="user@itstep.org") && password=="MySecret"
Логическая инверсия.
Оператор “!”
Меняет результат операнда на противоположный.
!(profession == ‘banker’)
Инверсия - это самый простой вид битовых операций, полный их перечень изучает раздел дискретной математики.
При инверсии тупо меняются все биты (0 или 1) на противоположные.
Битовые операции/операторы.
Применяются крайне редко ради экономии памяти, повышения быстродействия и в криптографии.
Битовое и - &
Битовое исключающее ИЛИ - ^
Битовое ИЛИ - |
Оператор typeof
Определяет тип переменной.
«typeof 2» даст результат «number»
Название типа является строковой величиной и ее можно сравнивать.
typeof 2 === "number"
Любая неопределенная переменная имеет тип «undefined» и обращение к любому имени не должно приводить к ошибке, даже если это имя нигде ранее не определялось
console.log(typeof s); // вернет undefined
Именно поэтому не возникает ошибок в момент присвоения переменных
x = 1
т.к. переменная будет автоматически создана
Однако это вызовет ошибку
console.log(s);
Потому что ошибке приводит обращение к значению неопределенной переменной — так называемая попытка ее чтения (операцией console.log(x);).
Диалоговые окна.
alert - Окно сообщений.
prompt - Окно ввода сообщения. Возвращает то значение, которое вводит пользователь.
confirm - Окно подтверждения действия. Возвращает true или false
Все эти окна модальные, т.е. пока пользователь не отреагирует, браузер блокирует страницу.
Примечание. Окно alert возвращает значение undefined. Поэтому мы его и видем в консоле
Унарный опрератор + часто используется к приветению типа к числовому.
x = +prompt("Input x=")
Понятие программного объекта.
Объект - это программная сущьность (существо), которое обладает свойствами и методами.
Получение свойства.
object.prpperty_name
Вызов метода.
object.do_something(with_something)
Модуль Math
Math - это встроекнный в язык обьект со своими свойствами и методами.
Основные свойства.
Math.PI - число пи.
Math.E - основа натуральных логорифмов.
Основные методы.
Тригонометричные функции sin(), cos(), tan(), asin(), acos(), atan(), atan2()
Math.abs(x) - модуль числа.
Math.floor(x) - округляет x до целого большего.
Math.ceil(x), Math.round(x) - округляет x до целого большего.
Math.pow(x, y) - возводит в степень.
Math.random() - случайное число от 0 до 1.