You don't know js(up & going)


Download 424.95 Kb.
Pdf ko'rish
bet31/53
Sana08.11.2023
Hajmi424.95 Kb.
#1757840
1   ...   27   28   29   30   31   32   33   34   ...   53
Bog'liq
You don\'t know JS(up & going)

_____________________________________________________________
var a = 42;
var b = "foo";
a < b;
// false
a > b;
// false
a == b;
// false
_____________________________________________________________


Подождите-ка, как это все эти три сравнения могут быть `false`? Так как
значение `b` приводится к "некорректному числовому значению" `NaN` в
сравнениях `<` и `>`, а спецификация говорит, что `NaN` не больше и не меньше,
чем любое другое значение.
Сравнение `==` не проходит по другой причине. `a == b` может быть
некорректным, если оно интерпретируется как `42 == NaN` или `"42" == "foo"` —
как мы объяснили ранее, первый вариант — наш случай.
**Примечание:** Более детальная информация о правилах сравнения в
неравенствах есть в разделе 11.8.5 спецификации ES5, также сверьтесь с главой
4 книги *Типы и синтаксис* этой серии.
Переменные
В JavaScript имена переменных (включая имена функций) должны быть
корректными *идентификаторами*. Строгие и полные правила о корректных
символах в идентификаторах — немного сложны, когда вы хотите использовать
нестандартные символы, такие как Unicode-символы. Если вы собираетесь
использовать только типичные буквенно-цифровые ASCII символы, то правила
просты.
Идентификатор должен начинаться с `a`-`z`, `A`-`Z`, `$` или `_`. Дальше он
может содержать любые из этих же символов и цифры `0`-`9`.
В общем-то, те же правила, как и к идентификатору переменной, применяются и к
имени свойства. Однако, определенные слова не могут использоваться как
переменные, но могут использоваться в качестве имен свойств. Эти слова
называются "зарезервированными словами", и включают ключевые слова JS
(`for`, `in`, `if` и т.д.), так же как и `null`, `true` и `false`.
**Примечание:** Более детальная информация о зарезервированных словах есть
в приложении А книги *Типы и синтаксис* этой серии.

Download 424.95 Kb.

Do'stlaringiz bilan baham:
1   ...   27   28   29   30   31   32   33   34   ...   53




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling