Введение
В этом уроке мы рассмотрим примитивные типы данных в JavaScript. Примитивные типы данных — это основные строительные блоки языка, которые позволяют работать с различными видами информации. Понимание этих типов данных является фундаментальным для эффективного программирования на JavaScript.
Числа (number)
Числовой тип данных number
используется для представления как целых, так и дробных чисел. В JavaScript нет отдельных типов для целых и дробных чисел — все они относятся к типу number
.
Примеры чисел:
let integer = 42;
let float = 3.14;
Особенности:
- Операции с числами: Вы можете выполнять различные арифметические операции с числами, такие как сложение, вычитание, умножение и деление.
NaN
: Специальное значениеNaN
(Not a Number) появляется, если операция с числами невозможна.
let result = 0 / 0; // NaN
Строки (string)
Строки string
используются для представления текста. Строки в JavaScript могут быть заключены в одинарные кавычки ('
), двойные кавычки ("
) или косые кавычки (`
).
Примеры строк:
let singleQuoteString = 'Hello, world!';
let doubleQuoteString = "Hello, world!";
let templateString = `Hello, world!`;
Особенности:
- Конкатенация строк: Вы можете объединять строки с помощью оператора
+
.
let greeting = 'Hello, ' + 'world!'; // "Hello, world!"
- Шаблонные строки: Шаблонные строки позволяют вставлять выражения внутрь строки с помощью синтаксиса
${}
.
let name = "John";
let message = `Hello, ${name}!`; // "Hello, John!"
Логические значения (boolean)
Логический тип данных boolean
имеет два возможных значения: true
(истина) и false
(ложь). Этот тип данных часто используется в условных конструкциях и циклах.
Примеры логических значений:
let isTrue = true;
let isFalse = false;
Особенности:
- Логические операторы: Вы можете использовать логические операторы для выполнения операций с логическими значениями (
&&
,||
,!
).
let result = true && false; // false
Null и Undefined
Null
null
представляет намеренное отсутствие значения. Это специальное значение, которое можно присвоить переменной.
Пример null
:
let emptyValue = null;
Undefined
undefined
означает, что переменная была объявлена, но ей не было присвоено значение.
Пример undefined
:
let notAssigned;
Отличия:
null
— значение присваивается явно.undefined
— значение не присваивается.
Символы symbol
Символ symbol
— это уникальный и неизменяемый тип данных, который используется для создания уникальных идентификаторов.
Пример символа:
let uniqueId = Symbol('id');
Особенности:
- Каждый символ уникален, даже если они созданы с одинаковым описанием.
let symbol1 = Symbol('id');
let symbol2 = Symbol('id');
console.log(symbol1 === symbol2); // false
Большие числа bigint
BigInt
— это тип данных, который используется для представления целых чисел произвольной точности. Он позволяет работать с числами, которые выходят за пределы возможностей типа number.
Пример BigInt
:
let bigNumber = 1234567890123456789012345678901234567890n;
Особенности:
BigInt
создаются с использованием суффиксаn
.
let anotherBigInt = 123456789n;
Использование оператора typeof
Оператор typeof
используется для определения типа данных переменной. Он возвращает строку, обозначающую тип данных переменной.
Примеры использования typeof
:
let num = 42;
let str = "Привет";
let isAvailable = true;
let emptyValue = null;
let notDefined;
let sym = Symbol("unique");
let bigNum = 1234567890123456789012345678901234567890n;
console.log(typeof num); // "number"
console.log(typeof str); // "string"
console.log(typeof isAvailable); // "boolean"
console.log(typeof emptyValue); // "object" (особенность JavaScript)
console.log(typeof notDefined); // "undefined"
console.log(typeof sym); // "symbol"
console.log(typeof bigNum); // "bigint"
Заключение
Примитивные типы данных в JavaScript — это основные строительные блоки, которые позволяют работать с различными видами информации. Понимание типов данных, таких как number
, string
, boolean
, null
, undefined
, symbol
и bigint
, важно для написания эффективного и понятного кода.
Контрольные вопросы
Какой тип данных используется для представления целых и дробных чисел в JavaScript?
string
number
boolean
bigint
Какой тип данных используется для представления текста в JavaScript?
number
boolean
string
symbol
Какое значение представляет намеренное отсутствие значения?
undefined
null
NaN
false
Какое значение имеет переменная, если она была объявлена, но ей не было присвоено значение?
null
0
undefined
NaN
Какой тип данных имеет два возможных значения: true
и false
?
string
number
boolean
undefined
Что такое символ (symbol
) в JavaScript?
- Уникальный и неизменяемый тип данных
- Тип данных для больших чисел
- Текстовое значение
- Логическое значение
Какой суффикс используется для создания значений типа BigInt
?
b
i
g
n
Что возвращает оператор typeof
при проверке типа значения 42
?
string
number
boolean
undefined
Какой тип данных будет у значения null
при использовании оператора typeof
?
null
undefined
object
boolean
Какой результат вернет typeof
для переменной, содержащей символ?
string
symbol
object
function
Упражнения
Упражнение 1: Работа с числами
Создайте переменные для целого и дробного числа, выполните с ними арифметические операции и определите результат с помощью typeof
.
Задача:
- Объявите переменные
a
иb
с значениями10
и3.5
. - Выполните операции сложения, вычитания, умножения и деления.
- Выведите результаты и их типы в консоль.
Пример:
let a = 10;
let b = 3.5;
let sum = a + b;
let difference = a - b;
let product = a * b;
let quotient = a / b;
console.log(sum); // 13.5
console.log(typeof sum); // "number"
console.log(difference); // 6.5
console.log(typeof difference); // "number"
console.log(product); // 35
console.log(typeof product); // "number"
console.log(quotient); // 2.857142857142857
console.log(typeof quotient); // "number"
Упражнение 2: Работа со строками
Создайте строковые переменные и выполните с ними различные операции, включая конкатенацию и использование шаблонных строк.
Задача:
- Объявите переменные
firstName
иlastName
с вашими именем и фамилией. - Создайте переменную
fullName
, объединивfirstName
иlastName
. - Выведите
fullName
с использованием шаблонных строк.
Пример:
let firstName = 'Тимур';
let lastName = 'Ахметов';
let fullName = firstName + ' ' + lastName;
console.log(fullName); // "Тимур Ахметов"
let message = `Привет, ${firstName} ${lastName}!`;
console.log(message); // "Привет, Тимур Ахметов!"
Упражнение 3: Работа с логическими значениями
Создайте переменные с логическими значениями и выполните логические операции.
Задача:
- Объявите переменные
isStudent
иisLoggedIn
с значениямиtrue
иfalse
. - Выполните логические операции
&&
,||
и!
. - Выведите результаты в консоль.
Пример:
let isStudent = true;
let isLoggedIn = false;
console.log(isStudent && isLoggedIn); // false
console.log(isStudent || isLoggedIn); // true
console.log(!isStudent); // false
Упражнение 4: Определение типа данных
Используйте оператор typeof
для определения типов данных различных переменных.
Задача:
- Создайте переменные различных типов данных (
number
,string
,boolean
,null
,undefined
,symbol
,bigint
). - Определите их типы с помощью оператора
typeof
и выведите результаты в консоль.
Пример:
let num = 42;
let str = "Привет";
let isAvailable = true;
let emptyValue = null;
let notDefined;
let sym = Symbol("unique");
let bigNum = 1234567890123456789012345678901234567890n;
console.log(typeof num); // "number"
console.log(typeof str); // "string"
console.log(typeof isAvailable); // "boolean"
console.log(typeof emptyValue); // "object"
console.log(typeof notDefined); // "undefined"
console.log(typeof sym); // "symbol"
console.log(typeof bigNum); // "bigint"