Переменные. Математические операции.

Программа Hello World.

Создаем html страницу index.html в новой папке.

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>Заголовок</title>
</head>

<body>

    <script>

       alert('Hello world!')

    </script>
</body>
</html>

Запускаем в браузере.

start page

Принимаем данные от пользователя, присваиваем их переменной и выводим на экран.

    var something = prompt('Вводи что нибудь')

    alert(something)

Присваивание.

x=y=z=1

start page

При цепочном присваивание вначале присваивается 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.

Полный список