Читать «HTML5. Недостающее руководство» онлайн - страница 310
Мэтью Мак-Дональд
// Объект myObject не существует.
// Теперь, может быть, удачное время, чтобы создать его. }
Область видимости переменных Переменные можно создавать в двух основных местах — внутри функции и вне функции. Следующий фрагмент кода содержит оба эти типа переменных: <script>
var outsideVariable;
function doSomething() {
var insideVariable;
...
}
</script>
Созданная внутри функции переменная называется
начает, что при следующем вызове метода doSomething() переменная insideVariable создается заново и получает новое значение. С другой стороны, значение переменной, созданной вне функции (такие перемен-ные называются
Используйте локальные переменные за исключением случаев, когда переменную нужно сделать доступной для нескольких функций или же сохранить ее значение по-сле исполнения функции. Отслеживание глобальных переменных требует больше усилий и большое количество таких переменных загромождает код.
Типы данных переменных
Переменные JavaScript могут содержать разные типы данных, такие как текст, це-лые числа, числа с плавающей запятой и объекты. Но независимо от типа данных, которые вы намереваетесь хранить в переменной, все они создаются посредством одного и того же ключевого слова var . При этом тип данных для конкретной пере-
менной
Это означает, что можно взять переменную myMessage , которая содержит текстовую строку, и присвоить ей числовое значение:
myMessage = 27.3;
Такой подход облегчает использование языка JavaScript, т. к. любая переменная может хранить данные любого типа. Но в то же самое время это способствует воз-никновению ошибок. Например, мы хотим взять текстовую строку из поля ввода и сохранить ее в переменной:
var = inputElement.value;
Но если не соблюдать должной осторожности, можно случайно сохранить в этой переменной не содержимое объекта, а сам объект: var = inputElement;
Так как JavaScript позволяет выполнять оба типа присваиваний и не может угады-вать мыслей программиста, он воспримет последнее присвоение как должное. Но дальше в коде эта оплошность, скорее всего, вызовет какую - либо неисправимую ошибку исполнения. Браузер просто прекратит выполнение оставшегося кода и не выдаст вам никаких сообщений об ошибке, объясняющих ее причину. Арифметические операции