Типы данных в JavaScript: краткое руководство
Типы данных — одна из базовых конструкций в любом языке программирования, на основе которых строятся другие структуры данных. В этой статье преподаватель кампуса Эльбрус Буткемп Адам Балкоев в рамках подготовки к пре курсу JavaScript рассказывает о типах данных в этом языке программирования.
JavaScript (JS) — язык программирования с динамической типизацией. Это означает, что во время объявления переменной не нужно указывать ее тип данных — он определится автоматически при присвоении значения.
Типов данных в JS восемь: number, string, boolean, undefined, object, bigInt, symbol и null. Начинающим программистам предстоит пользоваться шестью из них — на них и остановимся.
number
Тип данных number — числовой. Если вы записываете значение переменной в виде числа, как в коде ниже, то JS автоматически определяет его как number:
let age = 30;
С числами в JS можно выполнять различные математические операции: складывать (+), вычитать (-), умножать ( *) и делить. Выглядеть это может, например, так:
let quantity = 10; let price = 2.99; let total = quantity * price; console.log(total); // 29.9
В примере выше переменной «количество» присваивается значение 10 (целое число), а переменной «цена» — 2,99 (число с плавающей запятой). В переменной «итог» цена умножается на количество, а результат выводится в консоль.
string
Текст, заключенный в одинарные (‘) или двойные («) кавычки язык программирования автоматически относит к типу данных string, строка.
let name = "Adam";
Важно уточнить, что строки в JS неизменяемые: нельзя заменить отдельный символ после ее создания. С уже готовыми строками можно выполнять различные операции, в том числе объединять их, как в примере ниже:
let firstName = "Adam"; let lastName = "Balkoev"; let fullName = firstName + " " + lastName; // fullName will be "Adam Balkoev"
boolean
Следующий тип данных в JS — boolean. Это логический тип, который может принимать только два значения: true или false, правда или ложь.
Например, если мы создадим переменную haveCar со значением true, JS автоматически определит тип как boolean.
Этот тип данных часто используется в операторах if и циклах for и помогает понять, какую часть кода выполнять. Например:
let isTrue = true; let isFalse = false; if (isTrue) < console.log("The value is true"); >else
null
null в JS — это еще один тип данных, который имеет смысл «ничего» или «значение неизвестно».
Создадим переменную корзина (trash) с пустым значением, которое свидетельствует, что мы не знаем, что находится в корзине:
let trash = null;
undefined
Если в JS создать переменную и не присвоить ей никакого значения, язык программирования автоматически определит тип данных в ней как undefined.
Рассмотрим пример: создадим переменную box с пустым значением, которое свидетельствует, что в коробке пока ничего нет:
let box; condole.log(box) // undefined
object
Рассмотрим этот тип на примере. Напишем объект shop, внутрь которого поместим несколько свойств: название, описание и количество отделов.
let shop =
Значение этой переменной JS автоматически отнесет к типу object. Язык программирования при определении типа данных не проверяет, что находится внутри объекта: он видит структуру и по ней определяет тип.
Отметим, что типы данных bigInt, symbol встречаются значительно реже, а начинающие программисты с ними почти не сталкиваются. Поэтому в этой статье не будет рассматривать их отдельно, а остановимся на ключевом слове typeof.
Ключевое слово typeof
Оператор typeof позволяет определить, какой тип данных скрывается за той или иной переменной.
Поскольку JS присваивает типы данных автоматически, иногда полезно узнать, как язык видит значение переменной. Чтобы увидеть тип данных в терминале, нужно написать консоль с ключевым словом и указанием переменной. Например, так:
let name = "Adam"; console.log(typeof name); // string let age = 30; console.log(typeof age); // number

Катрин Алимова
Вам может также понравиться.

Для чего и кому нужны Big Data

7 нояб. 2023 г.
Big Data: основные понятия

31 окт. 2023 г.
Сколько типов данных в javascript
Существуют различные типы данных, которые мы можем использовать в JavaScript. Например,
const x = 5; const y = 'Привет';
- 5
- это целочисленный тип.
- это строковой тип.
Типы данных
В JavaScript существует восемь основных типов данных. К ним относятся:
Тип данных Описание Пример String представляет собой текстовые данные «Привет, мир!» Number целое или число с плавающей запятой 3 , 3.234 , 3e-2 BigInt целое число с произвольной точностью 900719925124740999n , 1n Boolean любое из двух значений: true или false true , false undefined тип данных, переменная которого не инициализирована let a; null обозначает значение null let a = null; Symbol тип данных, экземпляры которого уникальны и неизменяемы let value = Symbol(‘hello’); Object данные с парой ключ-значение let person = < >; Здесь все типы данных, кроме Object , являются примитивными типами данных.
Примечание: Тип данных Object (не примитивный тип) может хранить коллекции данных, в то время как примитивный тип данных может хранить только единичные.
Тип данных String
String используется для хранения строковых данных. В JavaScript строки окружены кавычками:
- Одиночные кавычки: ‘Привет’
- Двойные кавычки: «Привет»
- Либо обратный апостроф.
//примеры строк const name = 'Рем'; const name1 = 'Рам'; const result = `Имена: $ и $`;Одинарные и двойные кавычки практически одинаковы, и можно использовать любую из них.
Обратные апострофы обычно используются, когда необходимо включить переменные или выражения в строку. Это делается путем обертывания переменных или выражений символом $, как показано выше.
Тип данных Number
Number представляет целые и числа с плавающей запятой (десятичные и экспоненциальные). Например,
const number1 = 3; const number2 = 3.433; const number3 = 3e5; // 3 * 10^5Тип числа также может быть +Infinity , -Infinity и NaN (не число). Например,
const number1 = 3 / 0; console.log(number1); // Infinity const number2 = -3 / 0; console.log(number2); // -Infinity // cтроки нельзя делить на числа const number3 = 'abc' / 3; console.log(number3); // NaNТип данных BigInt
В JavaScript тип Number может представлять только числа меньше (2^53 — 1) и больше -(2^53 — 1). Однако если необходимо использовать число большего размера, чем это, можно использовать тип данных BigInt .
Число BigInt создается путем добавления n к концу целого числа. Например,
// значение BigInt const value1 = 900719925124740998n; // сложение двух больших целых чисел const result1 = value1 + 1n; console.log(result1); // "900719925124740999n" const value2 = 900719925124740998n; // ошибка! BigInt и number не могут быть суммированы const result2 = value2 + 1; console.log(result2);Вывод в консоль:
900719925124740999n Uncaught TypeError: Cannot mix BigInt and other typesТип данных Boolean
Этот тип данных представляет логические единицы. Boolean принимает одно из двух значений: true или false . Проще воспринимать его как переключатель «да/нет». Например,
const dataChecked = true; const valueCounted = false;Тип данных undefined
Тип данных undefined представляет значение, которое было не присвоено. Если переменная объявлена, но значение ей не присвоено, то значение этой переменной будет undefined . Например,
let name; console.log(name); // undefinedТакже можно явно присвоить переменной значение undefined . Например,
let name = undefined; console.log(name); // undefinedПримечание: Рекомендуется не присваивать переменной значение undefined явно. Обычно null используется для присвоения переменной «неизвестного» или «пустого» значения.
Тип данных null
В JavaScript null — это специальное значение, которое представляет собой пустое или неизвестное значение. Например,
const number = null;Приведенный выше код указывает, что переменная number пуста.
Примечание: null — это не то же самое, что NULL или Null.
Тип данных Symbol
Значение, имеющее тип данных Symbol , можно назвать символьным значением. Symbol — это неизменяемое примитивное значение, которое является уникальным. Например,
// два символа с одинаковым описанием const value1 = Symbol('hello'); const value2 = Symbol('hello');Хотя value1 и value2 оба содержат ‘hello’ , они отличаются, так как имеют тип Symbol .
Тип данных Object
Object — это сложный тип данных, который позволяет нам хранить коллекции данных. Например,
const student = < firstName: 'Билл', lastName: null, class: 10, >;JavaScript Type
JavaScript — это динамически типизированный язык. JavaScript автоматически определяет тип данных переменных за нас.
Это также означает, что переменная может иметь один тип данных, а затем может быть изменена на другой тип данных. Например,
// data имеет тип undefined let data; // data имеет тип Number data = 5; // data имеет тип String data = 'PurpleSchool';JavaScript typeof
Чтобы узнать тип переменной, можно использовать оператор typeof . Например,
const name = 'Билл'; typeof name; // возвращает "string" const number = 4; typeof number; // возвращает "number" const valueChecked = true; typeof valueChecked; // возвращает "boolean" const a = null; typeof a; // возвращает "object"Примечание: typeof возвращает «object» для типа null . Это известная проблема в JavaScript с момента его первого выпуска.
Типы данных в JS
В JavaScript существует 8 типов данных. Каждое значение, которые можно хранить в переменных и константах, соответствует одному из них.
Типы данных в JavaScript
Тип данных Описание Пример String текстовая информация — набор символов ‘Привет’ , «Привет, мир!» и т.д. Number целые числа или числа с плавающей точкой 3 , 3.234 , 3e-2 и т.д. BigInt целые числа произвольной длины 900719925124740999n , 1n и т.д. Boolean логическое значение true или false true , false undefined тип неинициализированной переменной let a; null только специальное значение null let a = null; Object пары ключ-значение коллекции данных let student = < >; Symbol используют для создания уникальных идентификаторов в объектах let value = Symbol(«Привет») Все типы данных, кроме Object , называются примитивными. Object — непримитивный тип данных. В нём можно хранить коллекции данных или более сложные структуры.
Строки в JavaScript
В типе String хранится текст — набор символов. В JavaScript строки выделяются кавычками или обратными апострофами:
- Одинарными кавычками: ‘Привет’ .
- Двойными кавычками: «Привет» .
- Обратными апострофами: `Привет` .
Одинарные и двойные кавычки практически взаимозаменяемы. В большинстве случаев нет никакой разницы, что использовать.
Обратные апострофы обычно используют, когда нужно включить переменные или выражения в строку. Это делается обертыванием переменных или выражений символом $ .
const name1 = 'Java'; const name2 = "JavaScript"; const result = `Запомни ты уже: $ и $ — совершенно разные ЯП!`;Числа в JavaScript
Для хранения числовых данных в JavaScript существует два типа: Number и BigInt .
Number
В типе Number хранятся целые числа (integer) и числа с плавающей точкой (float) от -25^3 — 1 до 25^3 — 1.
const number1 = 3; const number2 = 3.433; const number3 = 3e5 // 3 * 10^5В этом типе также могут храниться значения Infinity (бесконечность), +Infinity (+бесконечность), -Infinity (-бесконечность), NaN (not a number, не число).
const number1 = 3/0; console.log(number1); // Infinity const number2 = -3/0; console.log(number2); // -Infinity // строку нельзя разделить на число const number3 = "abc"/3; console.log(number3); // NaNBigInt
В типе BigInt можно хранить числа неопределенного размера, то есть если они не влезают в промежуток допустимых значений Number: от -25^3 — 1 до 25^3 — 1.
Значения типа BigInt создаются добавлением n в конец числа.
// Значение типа BigInt const value1 = 900719925124740998n; // Сложение двух чисел типа BigInt const result1 = value1 + 1n; console.log(result1); // "900719925124740999n" const value2 = 900719925124740998n; // Ошибка! Значения типов BigInt и Number нельзя складывать const result2 = value2 + 1; console.log(result2);Примечание. BigInt появился в новых версиях JavaScript относительно недавно, поэтому еще недоступен в некоторых браузерах, включая Safari. Проверить, поддерживает ли браузер тип BigInt можно на странице JavaScript BigInt support.
Логический тип в JavaScript
В типе Boolean можно хранить два логических (булевых) значения: true или false .
const dataChecked = true; const valueCounted = false;Значение undefined в JavaScript
В типе undefined хранится единственное специальное значение undefined , которое присваивается неинициализированной переменной или константе. То есть если мы объявим переменную или константу, но не присвоем ей никакого значения, она будет хранить undefined .
let name; console.log(name); // undefinedЗначение undefined можно присвоить переменной или константе и вручную.
let name = undefined; console.log(name); // undefinedСовет. Желательно не присваивать переменным и константам значение undefined. Если нужно обозначить неизвестную информацию или «пустое» значение, лучше воспользоваться значением null .
Значение null в JavaScript
В типе null хранится единственное специальное значение null , которое обозначет «пустое» или неизвестное значение.
const number = null;Код выше означает, что в переменной number — пусто.
Примечание. Не забывайте, что JavaScript чувствителен к регистру. Поэтому null — это не то же самое, что и Null или NULL.
Объекты в JavaScript
Тип Object хранит пары ключ-значение коллекции данных.
const student = < firstName: "Андрей", lastName: null, class: 11 >;Здесь firstName , lastName , class — ключи, «Андрей» , null и 11 — соответствующие им значения.
Символы в JavaScript
Символы в JS отличаются от привычных символов. Тип Symbol в JavaScript используется для создания уникальных, неизменяемых идентификаторов в объектах.
// два символа с одинаковым описанием const value1 = Symbol("привет"); const value2 = Symbol("привет");Несмотря на то, что и value1 , и value2 хранят одинаковое описание «привет» , это разные символы — так работает тип Symbol .
В JS — динамическая типизация
JavaScript — это динамически типизированный язык, то есть:
- JS автоматически определяет тип данных переменных за вас;
- одной переменной можно присваивать разные значения.
// переменная data не инициализирована // значит, она типа undefined let data; // переменной data присвоили число // значит, data изменила тип на Number data = 5; // переменной data присвоили строку // значит, data изменила тип на String data = "JavaScript";Оператор typeof в JavaScript
Чтобы узнать тип переменной или константы используют оператор typeof() .
const name = "Андрей"; typeof(name); // возвращает "string" const number = 4; typeof(number); // возвращает "number" const valueChecked = true; typeof(valueChecked); // возвращает "boolean" const a = null; typeof(a); // возвращает "object"Примечание. Обратите внимание, что typeof возвращает «object» для типа null . Это давно известный баг, который присутствовует в JS с момента релиза. Этот баг, скорее всего, никогда не исправят из-за необходимости сохранять обратную совместимости существующего кода с новыми версиями языка.
СodeСhick.io — простой и эффективный способ изучения программирования.
2023 © ООО «Алгоритмы и практика»
