HTML, XHTML и CSS на 100%
Шрифт:
В языке JavaScript есть поддержка логических типов данных, которые могут принимать лишь два значения: true (истина) и false (ложь). Логические (булевые) величины необходимы для работы с условиями, с которыми вы познакомитесь дальше в этой главе.
Внимание!
Ключевые слова true и false обязательно должны вводиться буквами нижнего регистра.
Наверное, наиболее часто используемым типом данных в JavaScript является строка. Строка – это набор символов, возможно пустой, заключенный в одинарные или двойные кавычки. Использование двух
«Строка текста»
"Россия!"
"4567"
""
'Операционные системы'
'Льюис Кэрролл "Алиса в стране чудес"'
Иногда может возникнуть необходимость дать компьютеру команду на использование специальных символов, например табуляции или перевода строки. Чтобы ввести в строку любой Unicode-символ, нужно указать его код после \u в виде \uXXXX. В табл. 11.5 представлены наиболее часто используемые управляющие символы.
Часто управляющие символы используются для выравнивания данных (листинг 11.4).
<html>
<head>
<title> Выравнивание с помощью управляющих символов </title>
</head>
<script>
alert("Имя:\t\tВася\nФамилия:\t\tПетров\nКомпания:\tВася&K");
</script>
<body>
</body>
</html>
Поскольку окно, создаваемое методом alert, зависит от браузера, то и выравнивание в различных браузерах происходит по-разному. На рис. 11.6 показан результат выполнения вышеприведенного кода, адаптированного к браузеру Internet Explorer.
Рис. 11.6. Выравнивание с помощью управляющих символов
Помимо чисел, строк и логических величин, существует еще два типа данных: функции и объекты. Функции могут быть встроенными, например alert, а могут быть созданы разработчиком. Кроме того, функции могут принадлежать объекту, тогда они называются методами. Объекты также могут быть встроенными, например document, а могут быть созданы программистом. Считается, что значение null является объектом.
Если браузер не может определить тип данных, то он присваивает им значение undefined (неопределяемый).
Переменные
Переменная – это имя, присваиваемое ячейке памяти компьютера, которая хранит определенные данные во время работы сценария. Переменные есть в каждом языке программирования, даже в низкоуровневом языке Ассемблер. Они облегчают программисту работу по манипулированию с данными.
Имя переменной является идентификатором, поэтому подчиняется тем же правилам.
Объявление
переменной означает, что вы даете команду зарезервировать место для хранения данных, при этом указанный идентификатор будет использоваться в качестве имени переменной. Чтобы объявить переменную, надо после ключевого слова var указать ее идентификатор. Можно сразу объявить несколько переменных, задав их имена через запятую.Рассмотрим примеры объявлений переменных:
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).
<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 относится к числу языков, слабо контролирующих типы данных, поэтому одна переменная может в ходе работы сценария принимать значения различных типов. Однако такого следует избегать, так как это может привести к трудноуловимым ошибкам и усложнить понимание кода.
Переменные могут быть глобальными и локальными. Понятие области действия переменных тесно связано с функциями, которые являются отдельными блоками кода. Переменная, объявленная внутри функции, является локальной, и только эта функция имеет доступ к ее значению. Локальные переменные создаются и уничтожаются вместе с соответствующей функцией. Глобальные переменные должны объявляться вне функций. Такие переменные позволяют функциям обмениваться данными.