TGViewer
Frontend | Вопросы собесов Frontend | Вопросы собесов @easy_javascript_ru · 17.6K subscribers
Post #378 6.72K
Что известно про преобразование типов ?
Спросят с вероятностью 7%

Преобразование типов — это процесс приведения значения из одного типа в другой. JavaScript, как язык с динамической типизацией, автоматически преобразует типы значений, когда это необходимо, но также позволяет разработчикам явно выполнять преобразования типов.

Виды преобразования

1️⃣Неявное (автоматическое):
Это преобразование, которое происходит автоматически при выполнении операций с разными типами данных. Например, при сложении числа и строки JavaScript автоматически преобразует число в строку.

2️⃣Явное:
Это преобразование, которое выполняется разработчиком явно с использованием встроенных функций или операторов.

Примеры неявного

1️⃣Строковое преобразование:
При конкатенации строки с числом число автоматически преобразуется в строку.
      const result = 'The answer is ' + 42;
console.log(result); // 'The answer is 42'


2️⃣Числовое преобразование:
При выполнении арифметических операций строка, содержащая число, автоматически преобразуется в число.
      const result = '42' - 10;
console.log(result); // 32


3️⃣Логическое преобразование:
В логическом контексте (например, в условиях if) значения автоматически приводятся к логическому типу (true или false).
      if ('hello') {
console.log('This is true'); // This is true
}

if (0) {
console.log('This is false'); // This will not be executed
}


Примеры явного

1️⃣Преобразование в строку:
Для явного преобразования в строку можно использовать метод String() или оператор + с пустой строкой.
      const num = 42;
const str1 = String(num);
const str2 = num + '';

console.log(str1); // '42'
console.log(str2); // '42'


2️⃣Преобразование в число:
Для явного преобразования в число можно использовать функции Number(), parseInt(), или parseFloat().
      const str = '42';
const num1 = Number(str);
const num2 = parseInt(str, 10);
const num3 = parseFloat(str);

console.log(num1); // 42
console.log(num2); // 42
console.log(num3); // 42


3️⃣Преобразование в логическое значение:
Для явного преобразования в логическое значение можно использовать функцию Boolean() или двойное отрицание !!.
      const value = 0;
const bool1 = Boolean(value);
const bool2 = !!value;

console.log(bool1); // false
console.log(bool2); // false


Таблица преобразования типов

| Значение | К строке | К числу | К логическому |
|-------------------|-------------------|------------------|-----------------|
| undefined | 'undefined' | NaN | false |
| null | 'null' | 0 | false |
| true | 'true' | 1 | true |
| false | 'false' | 0 | false |
| 42 | '42' | 42 | true |
| 0 | '0' | 0 | false |
| '' (пустая строка) | '' | 0 | false |
| '42' | '42' | 42 | true |
| 'hello' | 'hello' | NaN | true |
| {} (пустой объект) | '[object Object]' | NaN | true |
| [] (пустой массив) | '' | 0 | true |
| [42] | '42' | 42 | true |
| [1, 2, 3] | '1,2,3' | NaN | true |


Преобразование типов — это процесс приведения значения из одного типа в другой. Оно может происходить автоматически (неявное преобразование) или выполняться разработчиком явно (явное преобразование). Предоставляет функции и методы для преобразования в строки, числа и логические значения.

👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент

🔐 База собесов | 🔐 База тестовых
  • 👍 12
  • ❤ 11
More from @easy_javascript_ru
  1. Oct 16, 2026🤔 Что такое meta теги? Meta-теги – это специальные HTML-теги, которые содержат метаинформ…
  2. Oct 15, 2026Post #3044
  3. Oct 15, 2026🤔 Какие преимущества у di? Dependency Injection (DI) – это паттерн проектирования, которы…
  4. Oct 14, 2026🤔 Зачем создавались библиотеки react и другие? Библиотеки, такие как React, создавались д…
  5. Oct 13, 2026🤔 Что такое репозиторий? Это хранилище кода, файлов и их истории изменений. Используется…
  6. Oct 13, 2026🤔 Как мы можем замерить скорость работы участка кода с date.Now? В JavaScript можно замер…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →