JavaScript, переменные (2)

Есть два способа объявлять переменные это var и let. В современном коде лучше использовать второй. Пример ниже демонстрирует как объявить переменную и присвоить ей значение.

Рисунок 1 — Объявление переменой, способ 1
Рисунок 2 — Объявление переменной, способ 2

Как можно еще:

Рисунок 3 — Работа с переменными

Можно объявить две переменные и скопировать данные из одной в другую.

Рисунок 4 -Работа со значением переменных

Имена переменных
В JavaScript есть два ограничения, касающиеся имён переменных:
1) имя переменной должно содержать только буквы, цифры или символы $ и _
2) первый символ не должен быть цифрой
3) регистр имеет значение
4) нелатинские буквы разрешены, но не рекомендуются

Константы

Рисунок 5 — Работа с константами

Задание:

Работа с переменными

  1. Объявите две переменные: qwer и user.
  2. Запишите строку "Имя студента" в переменную user
  3. Скопируйте значение из переменной user в qwer.
  4. Выведите на экран значение qwer, используя функцию alert (должна показать ваше имя).

Придумайте правильные имена

  1. Создайте переменную для названия нашей планеты. Как бы вы её назвали?
  2. Создайте переменную для хранения имени текущего посетителя сайта. Как бы вы назвали такую переменную?

Типы данных, число.

Переменная в JavaScript может содержать любые данные. В один момент там может быть строка, а в другой – число:

Рисунок 6 — Определение типа переменной

Языки программирования, в которых такое возможно, называются Динамически типизированные языки программирования — это языки в которых есть типы данных, но переменные не привязаны ни к одному из них.

Числовой тип данных (number) представляет как целочисленные значения, так и числа с плавающей точкой.

Операций над числами:
умножение *,
деление /,
сложение +,
вычитание — и так далее.
«Специальные числовые значения»: Infinity, -Infinity и NaN.
Infinity представляет собой математическую бесконечность ∞, получается в результате деления на ноль:
alert( 1 / 0 ); // Infinity
Или задать его явно:
alert( Infinity ); // Infinity
NaN результат неправильной или неопределённой математической операции, например:
alert( «не число» / 2 ); // NaN, такое деление является ошибкой
alert( «не число» / 2 + 5 );
// NaN
Если где-то в математическом выражении есть NaN, то результатом вычислений с его участием будет NaN

Когда нужны действительно гигантские числа, например, в криптографии или при использовании метки времени («timestamp») с микросекундами, то можно использовать тип BigInt. Чтобы создать значение типа BigInt, необходимо добавить n в конец числового литерала:

// символ «n» в конце означает, что это BigInt
const bigInt = 1234567890123456789012345678901234567890n;

Работа со строками

Строка (string) в JavaScript должна быть заключена в кавычки, существует три типа кавычек.  Строка может содержать ноль символов (быть пустой), один символ или множество.
let str = «Привет»;
let str2 = ‘Одинарные кавычки тоже подойдут’;
let phrase = Обратные кавычки позволяют встраивать переменные ${str};

Обратные кавычки позволяют встраивать выражения в строку, заключая их в ${…}. Например:
let name = «Анна»;
// Вставим переменную
alert( Привет, ${name}! );
// Привет, Анна!
// Вставим выражение
alert( результат: ${1 + 2} );
// результат: 3

Булевый (логический) тип
Булевый тип (boolean) может принимать только два значения: true (истина) и false (ложь). Например:
let nameFieldChecked = true; // да, поле отмечено
let ageFieldChecked = false;
// нет, поле не отмечено

Булевые значения также могут быть результатом сравнений:
let isGreater = 4 > 1;
alert( isGreater ); // true (результатом сравнения будет «да»)

Значение «null»
Специальное значение null формирует отдельный тип, который содержит только значение null:
let age = null;
В JavaScript null не является «ссылкой на несуществующий объект» или «нулевым указателем», как в некоторых других языках. Это просто специальное значение, которое представляет собой «ничего», «пусто» или «значение неизвестно». В приведённом выше коде указано, что значение переменной age неизвестно.

Значение «undefined»
Специальное значение undefined формирует тип из самого себя так же, как и null, означает, что «значение не было присвоено». Если переменная объявлена, но ей не присвоено никакого значения, то её значением будет undefined:
let age;
alert(age);
// выведет «undefined»
Технически можно присвоить значение undefined любой переменной:
let age = 123;
// изменяем значение на undefined
age = undefined;
alert(age);
// «undefined»
…Но так делать не рекомендуется. Обычно null используется для присвоения переменной «пустого» или «неизвестного» значения, а undefined – для проверок, была ли переменная назначена.

Объекты и символы
В объектах хранят коллекции данных или более сложные структуры. Объекты занимают важное место в языке и требуют особого внимания. Мы разберёмся с ними дальше. Тип symbol (символ) используется для создания уникальных идентификаторов в объектах, изучим этот тип после объектов.

Оператор typeof
Оператор typeof возвращает тип аргумента полезен при необходимости обрабатывать значения различных типов по-разному или просто для проверки. У него есть две синтаксические формы:
Синтаксис оператора: typeof x.
Синтаксис функции: typeof(x).
Другими словами, он работает со скобками или без скобок. Результат одинаковый.
Вызов typeof x возвращает строку с именем типа:

typeof undefined // «undefined»
typeof 0
// «number»
typeof 10n
// «bigint»
typeof true
// «boolean«
typeof «foo»
// «string»
typeof Symbol(«id»)
// «symbol»
typeof Math
// «object» (1)
typeof null
// «object» (2)
typeof alert
// «function» (3)

Задание:

Шаблонные строки
Что выведет этот скрипт?
let name = «Ilya»;
alert( hello ${1} );
// ?
alert( hello ${"name"} );
// ?
alert( hello ${name} );
// ?

Обратные кавычки позволяют вставить выражение внутри ${…} в строку.
let name = «Ilya»;
// выражение — число 1
alert( hello ${1} );
// hello 1
// выражение — строка «name«
alert( hello ${"name"} );
// hello name
// выражение — переменная, вставим её в строку
alert( hello ${name} );
// hello Ilya

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *