Здравствуйте уважаемые читатели! Сегодня рассмотрим преобразование примитивных типов данных (все типы кроме объектов) в языке javascript. Система преобразования типов в js простая, но незначительно отличается от других языков программирования.
Всего в javascript есть три преобразования:
Далее рассмотрим их подробнее.
Явным образом осуществить преобразование переменной в строку можно вызовом String(val)
. Например:
var a = 123;
var b = a + 1; //b = 124
var c = String (a) + 1; // c = «1231»
При выполнении выражения String(false)
, String(null)
или String(undefined)
: false
становится "false"
, null
— "null"
и undefined
— "undefined"
.
Также преобразование к строке происходит при использовании оператора +
. Когда один из аргументов оператора +
является строкой, другой его аргумент также преобразуется в строку. Например:
var a = «1» + 1; //a = «11»
var b = true + «false»; //b = «truefalse»
Для явного преобразования переменной к числу используется выражение Number(val)
, либо можно просто поставить перед выражением унарный "+"
. Например:
var a = Number («100»); // 100
var b = +"100";// 100
Преобразование различных значений к числу подчиняется следующим правилам:
undefined
— преобразуется в NaN
(что такое NaN
можно почитать здесь);null
— преобразуется в 0
;true
— преобразуется в 1
;false
— преобразуется в 0
;'0'
. Если не пустая, то считывается число, если ошибка, то NaN
.Примеры:
var a = +" \n 999 \n\n"; // 999
var a = +"qwe 345 df";// будет ошибка и результат NaN
Как было описано выше, специальные значения undefined
и null
преобразуются в NaN
и 0
соответственно. Но при выполнении логической операции ==
ведут себя особенно. При сравнении ==
undefined
и null
равны друг другу, но не равны никакому другому значению. Примеры:
alert (undefined == null);// true
alert (undefined == 0);// false
alert (undefined > 0);// false
alert (undefined < 0);// false
alert (null == 0);// false
alert (null == 0);// false
но
alert (null >= 0);// true
Преобразование значений к true/false
при применении логических операторов, или в логических конструкциях, например в конструкции if(value)
. Либо явным образом с помощью оператора Boolean(value)
или двойного логического отрицания !!value
.
Все значения, которые пусты становятся false
. Вот они: 0
, null
, undefined
, NaN
, пустая строка. Причем под пустой строкой понимается именно пустая строка. Строка состоящая хотя бы из одного пробела не считается пустой и преобразуется к true
.
Остальные значения преобразуются к true
.
В итоге имеем три преобразования типов в JavaScript:
String(val)
;Number(val)
;Boolean(value)
.Особый случай сравнение специальных значений undefined
и null
. Они равны друг другу, но не равны чему либо еще.
На этом все. До новых встреч на страницах блога!
В данном топике описан процесс создания и управления большим количеством аккаунтов (или stealth ферма), предназначенных для работы с репутацией и…
Азартная индустрии при появлении интернета стала развиваться семимильными шагами. Игорные площадки быстро стали популярны. (далее…)
Ключевая задача антидетект браузера - обеспечить пользователя функционалом, позволяющим выглядеть в глазах поисковых и антифрод систем реальным пользователем, а не…
Бонусы без депозита предоставляют некоторые казино новичкам и зарегистрированным пользователям. Многие считают, что, воспользовавшись таким предложением, получат подарочные деньги от…
Игроки ищут любые возможности получить деньги от онлайн казино. Ведь победить в слотах непросто. Нередкие проигрыши могут подкосить бюджет любого…
Онлайн покер является удобным вариантом игры. Однако многие предпочитают устанавливать программы на свои устройства. (далее…)