Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В языках со статической типизацией (Си, Паскаль и др.), чтобы использовать переменную, программист должен сначала описать её, т.е. указать,
· что некоторый идентификатор будет обозначать переменную, и
· эта переменная предназначена для хранения данных определенного типа.
Эти свойства переменной сохраняются во время всей работы программы (статичны).
Динамическая типизация подразумевает, что тип хранимого переменной значения может меняться в процессе работы программы. Тип определяется каждый раз заново при получении переменной нового значения, поэтому в описаниях переменных указание типа не требуется.
В JS, как языке с динамической типизацией, переменные могут описываться, но без указания типа данных. Для этого используется ключевое слово var.
В отличие от Си, в JS составной оператор (блок) {...} не образует отдельной области видимости. Поэтому существует только два типа областей видимости: глобальная и в функции (локальная). Соответственно, переменные в JS делятся на глобальные и локальные.
Идентификаторы строятся по традиционным правилам — буквы (регистр учитывается) и цифры (но не в первой позиции). В роли буквы могут выступать также подчеркивание и знак доллара.
Динамическая типизация распространяется также на формальные параметры и возвращаемые значения функций. Т.е., при разных обращениях одна и та же функция может принимать и возвращать значения разных типов. Поэтому в описании функций типы аргументов и тип возвращаемого значения не указываются.
Примечание.
Начиная с JS 1.5, в идентификаторах разрешается использовать символы Unicode, в том числе кириллицу, но этим пользоваться не следует.
Операторы и выражения
Выражения в JS — это любой набор констант, переменных, операторов, и выражений, который приводит к единственному значению. Значение выражения может быть числом, строкой, логическим значением или объектом.
JS не только поддерживает набор операций, который используются в Си/С++, но даже расширяет его. Например, есть операция ===, которая сравнивает два выражения, имеют ли они равные значения и один и тот же тип данных.
Имеется также оператор побитового сдвига вправо >>>. Он отличается от >> тем, что при сдвиге вправо происходит "размножение единицы" из старшего разряда. Соответственно, имеется комбинированная операция присваивания >>>=.
По сравнению с Си новым также является то, что оператор +применяется для конкатенации символьных строк.
В JS применяются строковые (//) и блочные (/*...*/) комментарии.
Дата публикования: 2014-12-25; Прочитано: 142 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!