aboutsummaryrefslogtreecommitdiff
path: root/files/ru/glossary/type_coercion/index.md
blob: 80274474a3b3911304a0b28f13eaedf9a62fb703 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
---
title: Приведение типов
slug: Glossary/Type_coercion
tags:
  - Coercion
  - JavaScript
  - Type coercion
---
Приведение типов (type coercion) — это автоматическое или неявное преобразование значений из одного типа данных в другой (например, строки в число). _{{Glossary("Type conversion")}}_ похоже на _приведение типа_, потому что они оба преобразуют значения из одного типа данных в другой с одним ключевым различием — _приведение типа_ выполняется неявно, тогда как преобразование типа может быть неявным _или_ явным.

## Примеры

```js
const value1 = '5';
const value2 = 9;
let sum = value1 + value2;

console.log(sum);
```

В приведённом выше примере JavaScript _приводит_ число `9` к строке, а затем объединяет два значения вместе, в результате чего получается строка `59`. У JavaScript был выбор между строкой и числом, и в данном случае он решил приведение значение к строке.

В качестве альтернативного варианта, компилятор мог привести строку `5` к числу и вернуть сумму `14`. Чтобы получить подобный результат, нужно явным образом преобразовать строку `5` в число через метод {{jsxref("Global_Objects/Number", "Number()")}} :

```js
sum = Number(value1) + value2;
```

## Смотрите также

- {{Interwiki("wikipedia", "Type conversion")}} (Википедия)
- [Глоссарий](/ru/docs/Glossary)

  - {{Glossary("Type")}}
  - {{Glossary("Type conversion")}}