Переменные ECMAScript
- Предыдущая страница Грамматика ECMAScript
- Следующая страница Ключевые слова ECMAScript
Используйте оператор var для объявления переменных.
Имя переменной должно следовать некоторым простым правилам.
Объявление переменной
В предыдущем разделе мы рассказали, что переменные в ECMAScript определяются оператором var (аббревиатура от variable). Например:
var test = "hi";
В этом примере переменная test была объявлена и инициализирована значением "hi" (строка). Поскольку ECMAScript являетсяСлабый тип, поэтому интерпретатор автоматически создает строковое значение для testНе требует явного объявления типа.
Таким образом, можно определить два или более переменных одним оператором var:
var test1 = "hi", test2 = "hello";
Предыдущий код определяет переменную test1 с начальным значением "hi", а также переменную test2 с начальным значением "hello".
ОднакоПеременные, определенные одним и тем же оператором var, не обязательно должны иметь одинаковый тип, как показано ниже:
var test = "hi", age = 25;
Этот пример, кроме (повторно) определения test, также определяет age и инициализирует его как 25. Даже если test и age belong к двум различным типам данных, это также совершенно законно в ECMAScript.
В отличие от Java, переменные ECMAScript неНе обязательно инициализировать(они инициализируются сзади, об этом будет рассказано позже). Поэтому следующая строка кода также является эффективной:
var test;
Кроме того, в отличие от Java, переменныеМожет хранить значения разных типов. Это优势 слабых типов переменных. Например, переменную можно инициализировать значением типа строки, а затем установить значение типа числа, как показано ниже:
var test = "hi"; alert(test); test = 55; alert(test);
Этот код без проблем выведет строковое значение и числовое значение. Однако, как уже говорилось ранее, хорошей привычкой при использовании переменных является хранение одинаковых значений типа.
Имя переменной
Имя переменной должно следовать двум простым правилам:
- Первый символ должен быть буквой, подчеркиванием (_) или символом доллара ($)
- Оставшиеся символы могут быть подчеркиванием, символом доллара или любыми буквами или цифрами
Ниже приведены все законные переменные:
var test; var $test; var $1; var _$te$t2;
Известные правила именования переменных
Просто потому что грамматика имени переменной правильна, это не означает, что их следует использовать. Переменные также должны следовать одному из известных правил именования:
Метод Camel
Первая буква маленькая, следующие буквы также начинаются с маленькой буквы. Например:
var myTestValue = 0, mySecondValue = "hi";
Метод Pascal
Первая буква заглавная, следующие буквы также начинаются с заглавной буквы. Например:
var MyTestValue = 0, MySecondValue = "hi";
Метод匈牙利ской типизации
Присоедините маленькую букву (или последовательность маленьких букв) перед переменной, названной по пascal-маркеру, чтобы указать тип переменной. Например, i означает целое число, s означает строку, как показано в следующем примере:
var iMyTestValue = 0, sMySecondValue = "hi";
Этот учебник использует эти префиксы, чтобы сделать код примеров более читаемым:
Тип | Префикс | Пример |
---|---|---|
Массив | a | aValues |
Булево | b | bFound |
Число с плавающей запятой (число) | f | fValue |
Функция | fn | fnMethod |
Целочисленный (число) | i | iValue |
Объект | o | oType |
Регулярное выражение | re | rePattern |
Строка | s | sValue |
Тип (может быть любым) | v | vValue |
Объявление переменных не обязательно
Другая интересная особенность ECMAScript (и основное отличие от большинства языков программирования) заключается в том, что переменные не должны объявляться перед использованием. Например:
var sTest = "hello "; sTest2 = sTest + "world"; alert(sTest2);
В上面的 коде, в первую очередь, sTest объявлен как строковое значение "hello". В следующей строке sTest2 используется для объединения sTest со строкой "world". Переменная sTest2 не была определена с помощью оператора var, просто была вставлена, как будто она уже была объявлена.
Если интерпретатор ECMAScript встречает неопределенный идентификатор, он создает глобальную переменную с этим именем и initializes her to the specified value.
Это удобство языка, но это также опасно, если не следить за переменными. Лучшая практика - всегда объявлять все переменные, как и в других языках программирования.
- Предыдущая страница Грамматика ECMAScript
- Следующая страница Ключевые слова ECMAScript