Шпаргалка по JavaScript №6 - Переменные.

JavaScript не является строго типизированным языком программирования, а потому, переменные могут хранить в себе абсолютно все, что угодно, даже указатели на функции, без указания типа данных при их объявлении. Кроме того, переменные можно вовсе не объявлять. При первом ее упоминании она будет создана автоматически.

Варианты использования переменных.

Ниже приведен код с комментариями, который показывает каким образом можно использовать переменные:

var thisIsAString = 'This is a string'; // Объявление переменной, содержащей строку
var alsoAString = '25'; // Аналогично
var isANumber = 25; // Объявление переменной, содержащей число
var isEqual = (alsoAString == isANumber); // Истина, так как обе переменные равны 25
var isEqual = (alsoAString === isANumber); // Ложь, так как переменные имеют разный тип
var concat = alsoAString + isANumber; // Переменная concat равно 2525
var addition = isANumber + isANumber; // Переменная addition равно 50
var alsoANumber=3.05; // Переменная содержит число с плавающей точкой
var floatError=0.06+0.01; // Переменная содержит число 0.06999999999999999
var anExponent=1.23e+3; // Результат вычисления равен 1230
var hexadecimal = 0xff; // Результат равен 255 (шестнадцатеричная система)
var octal = 0377; // Результат равен 255 (восьмеричная система)
var isTrue = true; // Булева переменная
var isFalse= false; // Аналогично
var isArray = [0, 'one', 2, 3, '4', 5]; // Объявление массива
var four = isArray[4]; // Присвоение пятого (нумерация с нуля) элемента массива переменной
var isObject = { 'color': 'blue', // Объявление объекта
                 'dog': 'bark',
                 'array': [0,1,2,3,4,5],
                 'myfunc': function () { alert('do something!'); }
               }
var dog = isObject.dog; // Переменная dog теперь хранит значение 'bark'
isObject.myfunc(); // Появится окно с надписью "do something!"
var someFunction = function() { // Переменная указывает на функцию
    return "I am a function!";
}
var alsoAFunction = someFunction; // И эта переменная теперь указывает на ту же функцию
var result = alsoAFunction(); // А эта переменная хранит строку "I am a function!"

Переменная в языке JavaScript может начинаться с цифры или любого символа, кроме '$' и '_'. Вторую, третью и последующие позиции в названии могут занимать любые символы. Также рекомендуется избегать совпадения имен переменных с именами тэгов HTML, например (в Internet Explorer произойдет ошибка, так как он не различает два пространства имен):

var someDiv = document.getElementByID('someDiv');

Символ '$' нельзя использовать. так как существует неофициальное правило получения элемента по идентификатору: $('something') . Результат выполнения этой команды полностью совпадет с результатом выполнения команду document.getElementByID('something'). К сожалению не все браузеры поддерживают подобный синтаксис и рекомендуется использовать длинный аналог.

Подчеркивание '_' принято и настоятельно рекомендуется использовать для обозначения глобальных переменных, объявленных вне текущего файла.

Итог.

Переменные в JavaScript очень похожи на переменные в других языках, но, все же, имеют ряд отличий. Их стоит помнить при программировании, так как неаккуратное использование переменных может повлечь серьезные ошибки как в логике, так и в безопасности программы.

1601