Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Веб программирование.Начало пути.doc
Скачиваний:
0
Добавлен:
04.01.2020
Размер:
7.81 Mб
Скачать

Описание языка Типы данных

JavaScript поддерживает базовые типы данных и объекты. Имеется пять базовых типов данных: числа; строки; булев (логический) тип; undefined – неопределенный; null - пустой. Фактический интерес с точки зрения хранения данных представляют три: числа, логические значения и строки. Числам, строкам и логическим данным соответствуют объектные типы Number, String и Boolean (классы оболочки), которые включают большое число методов. Таким объектам могут присваиваться значения соответствующих базовых типов. Хотя строковые литералы относят к базовым типам, фактически переменные типа строка представляют собой ссылки на объекты.

Переменные и объекты в JavaScript объявляются с помощью ключевого слова var, и представляют собой ссылки, например:

var x;//undefined -переменная

После этого можно задать значение переменной:

x = "Sample string";

Язык JavaScript позволяет создавать переменные без их объявления:

y = "Second string";

При этом переменная y попадет в свойства глобального объекта window и становится глобальной. В языке JavaScript переменные не имеют строго закрепленного типа, тип переменной определяется данными, которые она хранит. Фактически переменная представляет собой ссылку, которую можно установить на различные значения несколько раз. Пример:

var man1 =10;

man1 = "Superman";

Объектные переменные создаются через оператор new или с помощью инициализации:

var man2 = new String("Superman");

В Javascript - все переменные представляют объекты, кроме базовых типов. Везде, где необходимо, базовые типы автоматически преобразуются в объекты. Так можно, например, определять длину литерала:

alert("Superman".length);

Преобразование типа

Преобразование типа может производиться неявно в выражениях или с помощью оператора присваивания. Чтобы преобразовать число в строку, достаточно сложить его с пустой строкой. Преобразование типа можно сделать явным через вызов конструктора объекта-оболочки:

var a="15"+2 //152 – складываются как строки

var a="15"-2 //13 – вычитания у строк нет, только у чисел

var a=true+false // 1

var test = Boolean("Stroka") // true

var х = Number("1234")

var z=String(x);

Для преобразования цифровой строки в число может быть исполь­зованы функции parseInt(“строка”) и parseFloat(“строка”). Еще один спо­соб состоит в использовании методов объектов. Метод toString () воз­вращает строку, соответствующую вызывающему его объекту.

var x=Number.toString()

var y=number.toString()

Число number преобразуется к объекту Number, затем вызовется ме­тод toString(). Преобразовать число в строку с указанным числом знаков можно с помощью методов toFixed и toExponential().

<!-- пример pr7: Преобразования типов-->

<html> <head>

<title> вывод окна</title>

</head>

<body >

<P> <CENTER>

<HR><P><P>Cтраница документа </center>

<script type="text/javascript">

var x=parseInt("35.55");

alert(2+2+ " "+25);//425

confirm(" x= " + x);//35

x=Number("25.5")+0.5; //26

prompt(" x= "+x);//26

</script>

</body>

</html>

Числа

В JavaScript численный тип данных включает целые и веще­ственные числа. Целые числа могут принимать значения от –255 до 255, вещественные могут принимать большие значения в пределах ±10e308 или быть точными в пределах ±2.2250e-308. Числа также могут записываться в экспоненциальной форме, на­пример 1.25e-05.

В языке JavaScript также имеется возможность записи чисел в вось­меричной системе счисления: вначале ставится 0, затем цифры от 0 до 7.

Для записи целого шестнадцатеричного числа вначале ставится ноль, затем буква x, затем само число, которое может содержать цифры от 0 до 9 и буквы от A до F. Числа в шестнадцатеричной системе счисления могут использоваться для битовых операций, а также для хранения цветов .

Если результат математической операции выходит за допустимые пределы, переменная принимает специальное значение Infinity – бесконечность. При сравнении положительная бесконечность всегда больше любого действительного числа, и наоборот, отрицательная бесконеч­ность всегда меньше любого действительного числа.

Еще одним специальным значением является NaN (not a number). Типичным примером операции, которая возвращает NaN, явля­ется деление на ноль. Для определения, является ли значение перемен­ной NaN, используется функция isNaN(value), которая возвращает true, если value является действи­тельным числом(включая бесконечность), и false, если значение переменной равно NaN.

К специальным числам относятся: Number.MAX_VALUE-макси­мальное значение числа, Number.MIN_VALUE-минимальное значение числа, Number.NaN - не число, Number.POSITIVE_INFINITY - положи­тельная бесконечность, Number.NEGATIVE_INFINITY - отрицательная бесконечность

Строки

Строковый литерал – это последовательность символов ограничен­ная двойными или одинарными кавычками. Строка представляет собой объект, который имеет свойство length (длину строки) и ряд методов, из которых приведем несколько часто употребляемых:

charAt(index : Number) : String – возвращает символ, находящийся на определенной позиции;

concat([string1 : String [, ... [, stringN : String]]]]) : String – соединяет строки (аналогично оператору «+»);

substr(start : Number [, length : Number]) : String – возвращает под­строку, которая начинается с определенной позиции и имеет определен­ную длину;

substring(start : Number, end : Number) : String – возвращает под­строку, которая начинается и заканчивается в указанных позициях.

Строки в JavaScript являются неизменяемыми, метод charAt() есть , а метода SetcharAt() нет. Строки сравниваются по значению (s1==s2), а не по ссылке как объекты.

Одиночный символ фактически рассматривается как строка. В Java­Script используются специальные символы(управляющие последова­тельности): \n, \r, \t, \’, \\, \xcode.