Page 123 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 123
базовый тип). Причины имеют исторический характер и не особенно интересны,
уже неоднократно предлагалось исправить это, но слишком много существующего
кода уже основано на таком поведении. В результате теперь это увековечено в спец
ификации языка.
Оператор typeof нередко критикуют также за то, что он не способен отличить
объекты, не являющиеся массивами, от массивов. Он корректно идентифицирует
функции (также являющиеся объектами специальных типов), но результатом typeof
[ ] является 11 obj e ct 11 •
Возможные возвращаемые значения оператора typeof приведены в табл. 5.8.
Таблица 5.8. Возвращаемые значения оператора typeof
Выражение Возвращаемое значение Примечания
Typeof undef ined 11undef ined 11
Typeof null 11 ob j e ct 11 Прискорбно, но факт
Typeof { } 11 ob j e ct 11
Typeof t r ue 11 boolean 11
Typeof 1 11 nurnЬer 11
Typeof 11 11 11 string 11
(
Typeof Sy mЬ ol ) 11 sy mЬ ol 11 Нововведение ЕSб
Typeof func i on ( ) { } " f unc i on 11
t
t
Поскольку typeof - оператор, крутлые скобки не обязательны. Таким
образом, если у вас есть переменная х, можете использовать синтаксис
typeof х вместо typeof ( х ) . Последнее - вполне допустимый син
таксис - круглые скобки лишь создают ненужную группу выражений.
Оператор void
У оператора void есть только одна задача: вычислить свой операнд, а затем воз
вратить undefined. Звучит не очень привлекательно? Да, согласен. Это применяется
для оценки выражения, в котором необходимо возвращаемое значение undefined,
но я никогда не встречался с такой ситуаций в реальной жизни. Единственная при
чина, по которой я включил его в эту книгу, в том, что вы будете иногда встречать
его использование в URL дескриптора HTML <а>, чтобы помешать браузеру перейти
на новую страницу.
<а href " j avascript : v oid О " >Ничего не делаем ! </а>
=
Это не рекомендуемый подход, но время от времени он встречается.
Операто р ы п р и с в а и в а н и я
Оператор присваивания прост: он назначает значение переменной. То, что на
ходится слева от знака равенства (иногда называемое [-значением (lvalue)), должно
1 2 2 Глава 5 . Выражения и операторы

