Почему в JS результатом var elem = '2'+'2'-'2' будет 20?

при этом typeof (elem) будет number, а typeof ('2') будет string...


Ответы (1 шт):

Автор решения: Igor

Хорошо бы указать, какой результат бы Вас устроил.

Потому что JavaScript умеет складывать строки, а вычитать строки - не умеет. Поэтому приходится вычитать числа.

→ Ссылка