К числу

1. Унарный плюс преобразует строку в число, если это возможно. Если строка не является числом, будет NaN.
2. Арифметические операторы (кроме бинарного плюса) приводят аргументы к числу, если возможно.
3. Операторы сравнения преобразуют значения к числам (кроме ===, !==).
4. parseInt(), parseFloat() — преобразуют строку в число, пока это возможно. NaN будет только если первый символ — не цифра.
5. Явно — Number(val).

При преобразовании к числу:

undefined NaN
null 0 при этом null>=0 возвращает true, но null>0 и null==0false
true 1
false 0
строка, начинающаяся с цифры (предшествующие пробелы не учитываются) преобразуется в число, если возможно, при ошибке — NaN
строка, начинающаяся не с цифры (предшествующие пробелы не учитываются) NaN
пустая строка 0

К строке

1. Бинарный плюс — при сложении двух аргументов, если хотя бы один из них является строкой, второй также будет преобразован к строке — конкатенация строк.
2. Функция alert преобразует свои аргументы к строкам.
3. Явно — String(val).

К булеву значению

1. В логическом контексте — условный оператор if.
2. Двойное отрицание !!val.
3. Явно — Boolean(value).

0 false
пустая строка
null
undefined
NaN
все числа, кроме 0 true
строки, кроме пустой строки
в т.ч. «0» и « » (строка из пробелов)
объекты

0 комментариев

Оставить комментарий

*Доступные HTML-теги: a, abbr, blockquote, code, pre, del, i, em, strong, b, strike
*Не будет опубликован