dr.Brain

doctor Brain

мир глазами веб-разработчика

JavaScript: результат сложения значений различных типов

прибавляем к строке число и логическое значение в JavaScript

dr.Brain

время чтения 1 мин.

Photo by Micah Tindell on Unsplash

Итак, перед нами выражение, в котором с помощью операторов + и - нужно выполнить манипуляции со значениями различных типов:

let x = '2' + 3 - true + '1';

Каков будет результат и, главное, почему?

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

Бинарные операторы + и - имеют одинаковый приоритет, поэтому x будет получен в результате последовательного выполнения вычислений слева направо без каких-либо исключений.

Сначала мы складываем строку "2" и число 3. Так как мы пытаемся объединить строку с числом, оператор + выполнит конкатенацию этих значений, преобразовав число 3 в строку "3". Полученный результат будет строкой "23".

Во втором действии, мы вычтем из строки "23" логическое значение true. Для того, чтобы осуществить это действие, JavaScript преобразует строку "23" в число 23, а true превратится в 1. В результате вычитания полученных значений будет получено число 22.

Наконец, мы прибавляем к числу 22 строку "1". Логика JavaScript будет такой же, как и в первом действии: так как одно из значений является строкой, левая часть выражения будет преобразована в "22", а оператор + в очередной раз выполнит объединение строк с результатом "221".

let x = '2' + 3 - true + '1';
console.log(x);
// 221

Спасибо за внимание.

Новые публикации

Далее

Категории

О нас

Frontend & Backend. Статьи, обзоры, заметки, код, уроки.