Типы данных в
JavaScript В некоторых языках
программирования необходимо при объявлении
переменных определять их тип данных. В JavaScript это
делать не надо. Тип данных определяется только в
некоторых исключительных случаях. Именно
поэтому стоит познакомиться более детально с
типами используемых данных в JavaScript.
В JavaScript используются следующие основные типы
данных:
- Числовой. Например 5, 25 или 1.45435643.
В JavaScript используются целочисленные значения и с
плавающей точкой.
- Булев, или логический. Он принимает только
два значения: true (правда) и false (ложь). Обычно он
используется для определения выполнения
заданного условия.
- Строковый. Он состоит из одного или многих
текстовых символов. (Если поступать по правилам,
то строковый тип данных назначается строковым
объектам, о которых речь пойдет позже).
- Нулевой. Определяется ключевым словом null. Это значение принимает
неопределенная переменная. Например, оператор document.write(fig) принимает это
значение, если переменная fig
раньше не определялась.
Хотя JavaScript и сохраняет за переменной тот тип
данных, который ей определен, существует
вероятность изменения типа данных переменной.
Предположим, вы объявили переменную следующим
образом:
total = 31;
Этот оператор объявляет переменную total
и назначает ей значение 31.
Это значение имеет числовой тип данных.
Предположим, вы затем изменяете тип данных
переменной:
total = "Вася";
Теперь переменной total
определен строковый тип данных. При выполнении
последнего оператора сообщение об ошибке на
экран не выводится. Он записан правильно, хотя и
существует несогласованность в определении типа
данных переменной total.
Хотя в JavaScript позволительно создавать
подобные несогласованности в определении
переменной типа данных, сделать ошибку все же
можно. Например, если переменная total
раньше использовалась в математических
вычислениях, то результат последнего оператора
приведет к конфликту, хотя сообщение об ошибке не
экран не выводится.
Преобразование типов
данных
JavaScript позволяет во всех возможных случаях
проводить преобразование одних типов данных в
другие. Например, вы в программе используете
оператор:
document.write("Общая сумма:" + total);
Если переменная total имеет
значение 40, то на экране
отобразится следующая строка:
Общая сумма: 40
Поскольку функция document.write
управляет строковым типом данных, любые
нетекстовые значения (в нашем примере total) преобразуются в текстовые.
И только после этого результат выводится на
экран.
Этот метод вывода данных на экран применяется
также для числовых значений с плавающей точкой и
булевых переменных. Но существуют некоторые
ситуации, в которых он не используется. Например,
следующее выражение выполняется правильно в
случае, если переменная total
имеет значение 40:
average = total / 3;
Если же переменная total
будет иметь строковый тип данных, то выполнение
этого оператора приведет к возникновению ошибки.
В некоторых ситуациях строковый тип данных
определен числу и необходимо преобразовать его в
числовой. Для этих целей в JavaScript используются две
функции.
parseInt(). Преобразует
текстовый тип данных в целочисленный.
parseFloat(). Преобразует
текстовый тип данных в числовой с плавающей
точкой.
Обе функции считывают число в виде текста и
преобразуют его в числовой тип данных. Например,
вам необходимо преобразовать предложение 20 пышногрудых блондинок в
числовое значение:
stringvar = "20 пышногрудых
блондинок";
numvar = parseInt(stringvar);
После выполнения этих операторов переменная numvar принимает значение 20. Нечисловая часть предложения
игнорируется и отбрасывается.
Функции преобразования типов данных ищут числа
только в начале строки текста. Если число не
найдено, функция возвращает строковое значение NaN, указывая на то, что текст не
содержит числовых значений.
Сохранение
пользовательских данных в переменных
Одно из наиболее распространенных применений
переменных - это сохранение пользовательских
данных. В качестве примера давайте создадим
сценарий, который запрашивает у пользователя
данные и создает документ HTML, содержащий их.
В этом сценарии будет создана настраиваемая
начальная страница пользователя. Для запроса у
пользователя информации в JavaScript используется
функция prompt.
В начале сценария у пользователя запрашивается
имя, фамилия и название страницы. Это реализуется
с помощью следующих операторов:
first = prompt("Введите ваше имя");
second = prompt("Введите вашу фамилию");
title = prompt("Введите название страницы");
Теперь вы можете приступать к настройке
страницы с помощью переменных. Начнем с названия
страницы, введенного пользователем:
document.write("<H1>" + title +
"</H1>");
Этот оператор добавляет в документ HTML название
страницы, заключенное в дескрипторы <H1>
(заголовок первого уровня). Таким же образом
добавляется имя пользователя и его фамилия:
document.write("<H2>Создано: " + first
+ " " + second + "</H2>");
Листинг 9.1 содержит полный программный код
документа HTML.
Листинг 9.1. Сценарий
настраиваемого документа HTML
1: <HTML>
2: <HEAD>
3: <TITLE>Настраиваемая страница</TITLE>
4: </HEAD>
5: <BODY>
6: <SCRIPT LANGUAGE="JavaScript">
7: first = prompt("Введите ваше имя");
8: second = prompt("Введите вашу фамилию");
9: title = prompt("Введите название страницы");
10: document.write("<H1>" + title + "</H1>");
11: document.write("<H2>Создано: " + first + " " + second + "</H2>");
12: </SCRIPT>
13: </BODY>
14: </HTML>
Чтобы протестировать этот сценарий, загрузите
документ HTML в браузере. При этом в его окне
отобразится запрос на введение сразу трех
значений. После их введения отображается
страница с вашими данными. |