Статистика |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|
Значения, переменные.
1. Значения
JavaScript распознаёт значения следующих типов:
- Числа, такие как 42 или 3.14159
- Логические (Булевы) значения: true или false.
- Строки, такие как "Howdy!”.
- null, специальное ключевое слово, обозначающее нулевое значение; null является также примитивным значением. Поскольку JavaScript чувствителен к регистру символов, null это не то же самое, что Null, NULL или какой-нибудь иной вариант.
- undefined, свойство верхнего уровня, значение которого не определено/undefined; undefined является также примитивным значением.
Этот сравнительно небольшой набор значений типов, или типов данных, даёт возможность выполнения функций в приложении. Видимого различия между целыми и реальными числами нет. Нет в JavaScript также типа данных date. Однако Вы можете использовать объект Date и его методы для работы с датами.
Объекты и функции также являются фундаментальными элементами языка. Вы можете представлять объекты как именованные контейнеры для значений, а функции – как процедуры, выполняемые Вашим приложением.
1.1. Конверсия типов данных JavaScript это динамически типизированный язык. Это означает, что Вы не должны специфицировать тип данных переменной при её объявлении и что типы данных при необходимости автоматически конвертируются в процессе выполнения скрипта. Так, например, Вы можете определить переменную:
и позднее можете присвоить этой же переменной строковое значение:
answer = "Thanks for all the fish..."
Поскольку JavaScript типизируется динамически, такое присвоение не является ошибкой.
В выражениях, содержащих числа и строки и операцию +, JavaScript конвертирует числа в строки. Например:
x = "The answer is " + 42 y = 42 + " is the answer"
В выражениях с использованием других операций, JavaScript не конвертирует числа в строки. Например:
2. Переменные Вы используете переменные в качестве символических имён значений. Имена переменных, называемые идентификаторы, подчиняются определённым правилам.
Идентификатор в JavaScript обязан начинаться с латинской буквы, символа подчёркивания/underscore (_) или знака доллара ($); последующие символы имени могут также быть цифрами (0–9). Поскольку JavaScript различает регистр символов, могут использоваться буквы от "A” до "Z” (верхний регистр) и от "a” до "z” (нижний регистр).
Начиная с JavaScript 1.5, Вы можете использовать в качестве идентификаторов буквы ISO 8859–1 или Unicode, такие как å и ü. Вы можете также использовать в качестве символов в идентификаторах escape-последовательности \uXXXX Unicode.
Вот примеры правильных имён: Number_hits, temp99, _name.
2.1. Объявление переменных Можно объявить переменную двумя способами:
- Просто присвоив ей значение. Например, x = 42
- С помощью ключевого слова var. Например, var x = 42
2.2. Вычисление переменных Переменная или элемент массива, которым не присвоены значения, имеют значение undefined. Результат вычисления переменной с неприсвоенным значением зависит от того, как она была объявлена:
- Если такая переменная была объявлена без использования var, возникает ошибка времени выполнения.
- Если такая переменная была объявлена с использованием var, результатом будет значение undefined, или ##NaN## в числовом контексте.
Следующий код демонстрирует вычисление переменных, не имеющих присвоенного значения.
function f1() {
return y - 2;
}
f1() function f2() {
return var y - 2;
}
f2()
Вы можете использовать undefined для определения, имеет ли переменная значение. В следующем коде переменная input не имеет присвоенного значения, и оператор if вычисляется в true.
var input;
if(input === undefined){
doThis();
} else {
doThat();
}
Значение undefined ведёт себя как false, если используется с булевым значением. Например, следующий код выполняет функцию myFunction, поскольку элемент массива не определён:
myArray=new Array()
if (!myArray[0])
myFunction()
Если Вы вычисляете null-переменную, значение null ведёт себя как 0 в числовом контексте и как false – в булевом. Например:
2.3. Область видимости/Scope переменной Если Вы устанавливаете идентификатор переменной путём присваивания значения вне функции, такая переменная называется глобальной, поскольку доступна в любом месте текущего документа. Если Вы объявляете переменную внутри функции, она называется локальной, поскольку «видна»/доступна только внутри этой функции.
Использование var для объявления глобальной переменной находится на Вашем усмотрении. Однако Вы обязаны использовать var для объявления переменной внутри функции.
Вы можете обращаться к переменным, объявленным в одном окне или фрэйме, из другого окна или фрэйма, специфицируя имя окна или фрэйма. Например, если переменная phoneNumber объявлена во FRAMESET-документе, Вы можете обратиться к ней из дочернего фрэйма: parent.phoneNumber.
3. Константы Вы можете создавать именованные константы «только-для-чтения» с помощью ключевого слова const. Синтаксис идентификатора константы такой же, что и у идентификатора переменной: он обязан начинаться с буквы или символа подчёркивания и может содержать символы алфавита, числа и символ подчёркивания.
Константа не может изменить значение путём нового присвоения и не может быть переобъявлена в процессе выполнения скрипта.
Правила видимости для констант те же, что и для переменных, за исключением того, что ключевое слово const необходимо всегда, даже для глобальных констант. Если ключевое слово отсутствует, идентификатор представляет var.
Вы не можете объявить константу с тем же именем, что и у функции или переменной, в одной области видимости с этой функцией или переменной. Например:
function f{};
const f = 5;
function f{
const g=5;
var g;
}
|
|
Календарь |
« Май 2024 » | Пн | Вт | Ср | Чт | Пт | Сб | Вс | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
|
|