Чтение онлайн

на главную

Жанры

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.

Чтобы определить тип переменной, можно использовать операцию typeof, которая возвращает строку с типом переменной (листинг 11.5).

Листинг 11.5. Типы данных

<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).

Листинг 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).

Листинг 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).

Поделиться:
Популярные книги

Метаморфозы Катрин

Ром Полина
Фантастика:
фэнтези
8.26
рейтинг книги
Метаморфозы Катрин

Вечная Война. Книга V

Винокуров Юрий
5. Вечная Война
Фантастика:
юмористическая фантастика
космическая фантастика
7.29
рейтинг книги
Вечная Война. Книга V

Генерал Скала и сиротка

Суббота Светлана
1. Генерал Скала и Лидия
Любовные романы:
любовно-фантастические романы
6.40
рейтинг книги
Генерал Скала и сиротка

Сумеречный Стрелок 3

Карелин Сергей Витальевич
3. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 3

Студент

Гуров Валерий Александрович
1. Студент
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Студент

Наизнанку

Юнина Наталья
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Наизнанку

Кодекс Охотника. Книга XVII

Винокуров Юрий
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVII

Кукловод

Злобин Михаил
2. О чем молчат могилы
Фантастика:
боевая фантастика
8.50
рейтинг книги
Кукловод

Наследник с Меткой Охотника

Тарс Элиан
1. Десять Принцев Российской Империи
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Наследник с Меткой Охотника

Восход. Солнцев. Книга IV

Скабер Артемий
4. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Восход. Солнцев. Книга IV

Я снова граф. Книга XI

Дрейк Сириус
11. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я снова граф. Книга XI

Егерь

Астахов Евгений Евгеньевич
1. Сопряжение
Фантастика:
боевая фантастика
попаданцы
рпг
7.00
рейтинг книги
Егерь

Кодекс Охотника. Книга ХХ

Винокуров Юрий
20. Кодекс Охотника
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга ХХ

Возвышение Меркурия. Книга 16

Кронос Александр
16. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 16