C++ CSS HTML Java JavaScript MySQL Oracle PERL PHP SQL Unix VBScript XHTML XML Сети
Глава 3
 

Глава 3

Внутренние объекты



В этой главе мы рассмотрим внутренние объекты языка JavaScript. В предыдущей части рассматривались объекты браузера.

типы, такие как строки, а также более сложные объекты, в частности даты.

Имя объекта Описание
Array Массив. Не поддерживается в браузерах старых версий
Date Дата и время
Math Поддержка математических функций
Object Обобщенный объект. Не поддерживается в старых версиях IE - до 4, NN - до 3.
String Текстовая строка. Не поддерживается в старых версиях



Объект array

Массив можно создать одним из следующих способов:

Объекты-массивы не имеют ни методов, ни свойств.

Объект Date



Объект содержит информацию о дате и времени. Этот объект имеет множество методов, предназначенных для получения такой информации. Кроме того объекты Date можно создавать и изменять, например путем сложения или вычитания значений дат получать новую дату. Для создания объекта Date применяется синтаксис:

dateObj = new Date(parameters)

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

Как уже говорилось ранее данный объект имеет множество методов, свойств объект Date не имеет.

Методы.



Методов много. Кратко опишу методы объекта Date в таблице.

Метод Описание метода
getDate() Возвращает день месяца из объекта в пределах от 1 до 31
getDay() Возвращает день недели из объекта: 0 - вс, 1 - пн, 2 - вт, 3 - ср, 4 - чт, 5 - пт, 6 - сб.
getHours() Возвращает время из объекта в пределах от 0 до 23
getMinutes() Возвращает значение минут из объекта в пределах от 0 до 59
getMonth() Возвращает значение месяца из объекта в пределах от 0 до 11
getSeconds() Возвращает значение секунд из объекта в пределах от 0 до 59
getTime() Возвращает количество миллисекунд, прошедшее с 00:00:00 1 января 1970 года.
getTimeZoneoffset() Возвращает значение, соответствующее разности во времени (в минутах)
getYear() Возвращает значение года из объекта
Date.parse(arg) Возвращает количество миллисекунд, прошедшее с 00:00:00 1 января 1970 года. Arg - строковый аргумент.
setDate(day) С помощью данного метода устанавливается день месяца в объекте от 1 до 31
setHours(hours) С помощью данного метода устанавливается часы в объекте от 0 до 23
setMinutes(minutes) С помощью данного метода устанавливаются минуты в объекте от 0 до 59
setMonth(month) С помощью данного метода устанавливается месяц в объекте от 1 до 12
setSeconds(seconds) С помощью данного метода устанавливаются секунды в объекте от 0 до 59
setTime(timestring) С помощью данного метода устанавливается значение времени в объекте.
setYear(year) С помощью данного метода устанавливается год в объекте year должно быть больше 1900.
toGMTString() Преобразует дату в строковый объект в формате GMT.
toString() Преобразует содержимое объекта Date в строковый объект.
toLocaleString() Преобразует содержимое объекта Date в строку в соответствии с местным временем.
Date.UTC(year, month, day [,hours][,mins][,secs]) Возвращает количество миллисекунд в объекте Date, прошедших с с 00:00:00 1 января 1970 года по среднему гринвичскому времени.


Разберем пару примеров:
    В данном примере приведен HTML-документ, в заголовке которого выводится текущие дата и время.

<html>
<head>
<script language "JavaScript">
<--
function showh() {
  var theDate = new Date();
  document.writeln("<table cellpadding=5 width=100% border=0>" +
       "<tr><td width=95% bgcolor=gray align=left>" +
       "<font color=white>Date: " + theDate +
       "</font></td></tr></table><p>");
}
showh();
//-->
</script>
</head>
</html>

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

<html>
<script language "JavaScript">
<--
theTime = new Date();
theHour = theTime.getHours();
if (18 > theHour)
  document.writeln("<body background='day.jpg' text='Black'>");
else
  document.writeln("<body background='night.jpg' text='White'>");
//-->
</script>
</body>
</html>

    Вероятно, вы успели заметить, что тег <body> создается в JavaScript-программе, а закрывается уже в статическом тексте HTML. Это вполне допустимо, так, как все теги расположены в правильном порядке. В данном примере предполагается, что файлы рисунков находятся в том же каталоге. Вы можете здесь задать полный адрес URL.


Объект Math



математические константы.
    Синтаксис:

Math.propertyName
Math.methodName(parameters)

Свойства



    Свойствами объекта Math являются математические константы:

E

Константа Эйлера. Приближенное значение 2.718 . . .

LN2

Значение натурального логарифма числа два. Приближенное значение 0.693 . . .

LN10

Значение натурального логарифма числа десять. Приближенное значение 2.302 . . .

LOG2_E

Логарифм e по основанию 2 (не вижу смысла в этой константе - это же корень из двух.) Приближенное значение 1.442 . . .)

LOG10_E

Десятичный логарифм e. Приближенное значение 0.434 . . .

PI

Число ПИ. Приближенное значение 3.1415 . . .

SQRT2

Корень из двух, (ыгы, это все равно, как еще и натуральный логарифм 2*e в степени 1/2)



Методы



Методы объекта Math представляют собой математические функции. Пожалуй, и их включим в таблицу:

abs()

Возвращает абсолютное значение аргумента.

acos()

Возвращает арккосинус аргумента

asin()

Возвращает арксинус аргумента

atan()

Возвращает арктангенс аргумента

ceil()

Возвращает большее целое число аргумента, округление в большую сторону. Math.ceil(3.14) вернет 4

cos()

Возвращает косинус аргумента

exp()

Возвращает экспоненту аргумента

floor()

Возвращает наибольшее целое число аргумента, отбрасывает десятичную часть

log()

Возвращает натуральный логарифм аргумента

max()

Возвращает больший из 2-х числовых аргументов. Math.max(3,5) вернет число 5

min()

Возвращает меньший из 2-х числовых аргументов.

pow()

Возвращает результат возведения в степень перврго аргумента вторым. Math.pow(5,3) вернет 125
random() Возвращает псевдослучайное число между нулем и единицей.

round()

Округление аргумента до ближайшего целого числа.

sin()

Возвращает синус аргумента

sqrt()

Возвращает квадратный корень аргумента

tan()

Возвращает тангенс аргумента



Math перед методом: var mpi = Math.Pi. В данном случае переменной mpi присвоится значение Пи. Или, например, var myvar = Math.sin(Math.Pi/4). Думаю, комментарии излишни.

Обобщенные объекты



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

Строковые объекты





stringName.propertyName
stringName.methodName(parameters)

Здесь stringName - имя объекта String. Строки можно создавать тремя способами:
1. Создать строковую переменную при помощи оператора var и присвоить ей строковое значение;
2. Присвоить значение строковой переменной только посредством оператора присваивания (=);
3. Использовать конструктор String().

Свойства



    Значением свойства length является длина строки. Например, выражение "Script".length вернет значение 6, поскольку строка "Script" содержит 6 символов.

Методы



Как можно и передположить, разработчики языка не оставили этот объект со скудным запасом методов. Вспомните любой язык программирования и сколько строковых функций он содержит. Чтож, так, как использование этих методов не составит затруднений, я их просто помещу в таблицу. Вызов метода осуществляется обычно: "Строка или строковая переменная".метод(), в данном случае метод без параметров, имеются методы и с параметрами. Заметьте, строка или строковая переменная, к которой применяется метод - объект, и никак не аргумент!

Метод Описание метода

big()

Аналогично тегам HTML <big> . . .</big>. позволяет отобразить более крупным шрифтом.

blink()

Заставляет строку мигать. (Этим почти никто не пользуется).

bold()

Название говорит за себя - делает символы жирными.

charAt(arg)

"Sc<FONT COLOR="#FF0000">ript".charAt(3); переменной vpos будет присвоено значение "r".

fixed()

Анологично <tt> . . .</tt> вывод строки фиксированного размера.

fontcolor(arg)

Анологично <font color="#rrggbb"> . . .</font>. Аргумент метода может быть как триплетом RGB, так и зарезервированным словом.

fontsize(arg)

Позволяет изменять размер шрифта. Аргумент в условных единицах. Анологично <font size=size> . . .</font>. Также можно использовать вид +size или -size для увеличения или уменьшения шрифта на size единиц, например: "строка".fontsize(+1).

indexOf(arg1[,arg2])

Возвращает позицию в строке, где впервые встречается символ - arg1, неябязательный числовой аргумент arg2 указывает начальную позицию для поиска.

italics()

Аналогично тегам HTML <i> . . .</i>. позволяет отобразить италиком.

lastlndexOf(arg1[,arg2])

Возвращает либо номер позиции в строке, где в последний раз встретился символ - arg1, либо -1, если символ не найден. Arg2 задает начальную позицию для поиска.

link()

Аналогично тегам HTML <a href> . . .</a>. позволяет преобразовать строку в гиперсвязь.

small()

Аналогично тегам HTML <small> . . .</small>. позволяет отображать строку мелким шрифтом.

strike()

Аналогично тегам HTML <strike> . . .</strike>. позволяет отображать строку зачеркнутой.

sub()

Аналогично тегам HTML <sub> . . .</sub>. позволяет отображать строку нижним индексом.

substring(arg1,arg2)

Позволяет извлеч подстроку длинной arg2, начиная с позиции arg1

sup()

Аналогично тегам HTML <sup> . . .</sup>. позволяет отображать строку верхним индексом.

toLowerCase()

Преобразует символы строкового объекта в строчные

toUpperCase()

Преобразует символы строкового объекта в прописные


операций над строками и в то же время как методы форматирования.

Содержание
Главная