I Shar

I Shar

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

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

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

I Shar

время чтения 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
    • js

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

Далее

Категории

О нас

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