HTML, XHTML и CSS на 100%
Шрифт:
Рассмотрим примеры объявлений переменных:
var myData1;
var x,y,z;
var k, msg1, msg2, IM;
В процессе объявления переменную можно проинициализировать, то есть установить для нее начальное значение:
var myStr="Здравствуйте, ";
var k=1000, x=12, y=-5;
var s=1.34e–5, msg11="Error", Flag=false;
Пока переменная не получит значение, она не определена – undefined.
<html>
<head>
<title>Типы данных</title>
</head>
<body>
<h2>Типы данных</h2>
<pre>
<script>
//Объявляем переменные
var i=45.78, msg="Строка";
var f=false, y;
//Выводим типы переменных
document.write("\n"+"Переменная i="+i+" – "+ typeof(i)+"\n");
document.write("Переменная msg="+msg+" – "+ typeof(msg)+"\n");
document.write("Переменная f="+f+" – "+ typeof(f)+"\n");
document.write("Переменная y ="+y+" – "+ typeof(y)+"\n");
//Инициализируем переменную y
y=null;
document.write("А теперь переменная y="+y+" – "+ typeof(y)+"\n");
</script>
</pre>
</body>
</html>
В вышеприведенном коде для вывода информации используется метод document. write, который позволяет дописывать строку текста прямо в страницу (рис. 11.7).
Рис. 11.7. Типы данных
Для вывода текста, значений переменных и их типа аргументом данного метода выступает довольно сложное выражение. Более подробно выражения будут рассмотрены далее в этой главе.
Совет
Язык JavaScript относится к числу языков, слабо контролирующих типы данных, поэтому одна переменная может в ходе работы сценария принимать значения различных типов. Однако такого следует избегать, так как это может привести к трудноуловимым ошибкам и усложнить понимание кода.
Переменные могут быть глобальными и локальными. Понятие области действия переменных тесно связано с функциями, которые являются отдельными блоками кода. Переменная, объявленная внутри функции, является локальной, и только эта функция имеет доступ к ее значению. Локальные переменные создаются и уничтожаются вместе с соответствующей функцией. Глобальные переменные должны объявляться вне функций. Такие переменные позволяют функциям обмениваться данными.
Массивы
Массив – это особая переменная, позволяющая хранить сразу несколько
Рассмотрим пример объявления и задания значений элементов массива (листинг 11.6).
<html>
<head>
<title>Работа с массивом</title>
<script>
//Объявляем массив с 5 элементами
var stars= new Array(5);
//Задание значений элементам массива
stars[0]='Сириус';
stars[1]=' Канопус';
stars[2]=' Арктур';
stars[3]=' Капелла';
stars[4]=' Вега';
//Вывод первого элемента массива
alert(stars[0]);
//Вывод всех элементов массива
alert(stars);
</script>
</head>
<body>
</body>
</html>
Обратите внимание, что при объявлении массива количество элементов указывается в круглых скобках, а при обращении к элементу его индекс указывается в квадратных скобках. Кроме того, в языке JavaScript нумерация элементов массива начинается с нуля, поэтому первый элемент массива – stars[0].
Язык JavaScript позволяет не перечислять все элементы по одному, а сразу вывести все элементы массива. Для этого необходимо обратиться к самому массиву, в результате чего получится строка, в которой все элементы массива перечислены через запятую (рис. 11.8).
Рис. 11.8. Вывод всех элементов массива
Значения элементов массива можно задать при его объявлении, тогда не нужно указывать количество элементов в массиве (листинг 11.7).
<html>
<head>
<title>Инициализация массива</title>
<script>
//Объявляем массив и инициализируем значения элементов
var stars= new Array('Сириус',' Канопус',' Арктур',' Капелла',' Вега');
//Вывод первого элемента массива
alert(stars[0]);
//Вывод всех элементов массива
alert(stars);
</script>
</head>
<body>
</body>
</html>
Размерность массива можно не указывать, так как язык JavaScript этого не требует. Таким образом, можно постепенно расширять массив по мере добавления данных. Более того, можно объявить элемент с индексом n, что увеличит длину массива до n+1. Узнать длину массива можно с помощью свойства length (листинг 11.8).