Внутренние объекты JavaScript
Внутренние объекты не относятся к браузеру или загруженному в настоящее время HTML-документу. Эти объекты могут создаваться и обрабатываться в любой JavaScript-программе. Они включают в себя простые типы, такие как строки, а также более сложные объекты, в частности даты.
Объект array
Примерами объектов-массивов в браузере служат гиперсвязи, метки, формы, фреймы. Массив можно создать одним из следующих способов:
- используя определенную пользователем функцию для присвоения объекту многих значений;
- используя конструктор Array();
- используя конструктор Object().
Объекты-массивы не имеют ни методов, ни свойств.
Пример:
<SCRIPT LANGUAGE="JavaScript">
myArray= new Array();
myArray[0]= "first element";
myArray[1]= "second element";
myArray[2]= "third element";
for (var i= 0; i< 3; i++)
{
document.write(myArray[i] + "<br>");
}
</SCRIPT>
Объект Date
Объект содержит информацию о дате и времени. Этот объект имеет множество методов, предназначенных для получения такой информации. Кроме того объекты Date можно создавать и изменять, например путем сложения или вычитания значений дат получать новую дату. Для создания объекта Date применяется синтаксис:
dateObj = new Date(parameters)
где dateObj - переменная, в которую будет записан новый объект Date.
Аргумент parameters может принимать следующие значения:
пустой параметр, например date() в данном случае дата и время - системные.
строку, представляющую дату и время в виде: "месяц, день, год, время", например "March 1, 2000, 17:00:00" Время представлено в 24-часовом формате;
значения года, месяца, дня, часа, минут, секунд. Например, строка "00,4,1,12,30,0" означает 1 апреля 2000 года, 12:30.
целочисленные значения только для года, месяца и дня, например "00,5,1" означает 1 мая 2000 года, сразу после полночи, так, как значения времени равны нулю.
|
|
Данный объект имеет множество методов, свойств объект 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()Возвращает значение года из объекта
- 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 года по среднему гринвичскому времени.
Разберем пару примеров:
В 1-ом примере приведен HTML-документ, в заголовке которого выводится текущие дата и время.
|
|
<html>
<head>
<script language "JavaScript">
<--
function showh() {
var theDate = new Date();
document.writeln("<table cellpadding=5 border=0>" +
"<tr><td 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 - встроенный в JavaScript объект, дающий доступ к константам и математическим функциям.Объект Math делится на две части - свойства, содержащие константы и методы для реализации функций. Свойствами объекта Math являются математические константы:
- E - Константа Эйлера. Приближенное значение 2.718 . . .
- LN2 - Значение натурального логарифма числа два. Приближенное значение 0.693 . . .
- LN10 - Значение натурального логарифма числа десять. Приближенное значение 2.302 . . .
- LOG2_E - Логарифм e по основанию 2
- LOG10_E - Десятичный логарифм e. Приближенное значение 0.434 . . .
- PI - Число ПИ. Приближенное значение 3.1415 . . .
- SQRT2 - Корень из двух
Методы объекта 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() Возвращает тангенс аргумента
Объект String
|
|
Объект string представляет собой последовательность символов, ограниченная одинарными или двойными кавычками. Обычно присваивают какой-то переменной строку и используют ее как объект для вызова свойств или методов. Например, s="internet", а свойство s.lenght (длина строки) вернет значение 8. Рассмотрим некоторые методы объекта:
- Большинство методов соответствует тегам HTML: big(), fontcolor(arg),fontsize(arg), small(), strike(), sub(), sup()
- anchor - Выводит строку на экран и делает ее якорем - textString.anchor(anchorName)
- blink - форматирует строковый объект в виде мигающей строки - stringname.blink()
- bold - Форматирует строковый объект жирным шрифтом - stringName.bold()
- charAt - Возвращает символ, находящийся в заданной позиции строки - stringName.charAt(arg)
- eval - Вычисляет строку как числовое выражение - eval(string)
- fixed - Выводит строку на экран шрифтом фиксированной ширины - stringName.fixed()
- italics - Отображает текст курсивом аналогично тегу <i> - stringName.italic()
- lndexOf - Возвращает позицию символа или подстроки в строке, начиная поиск сначала - stringName.lndexOf()
- lastlndexOf - Возвращает позицию символа или подстроки в строке, начиная поиск с конца - stringName.lastlndexOf()
- link - Создает новую гиперссылку на другой URL - stringName.link(argument)
- substring - Позволяет извлечь подстроку длиной arg2, начиная с позиции arg1 - stringName.substring(arg1, arg2)
- toLowerCase - Преобразует все символы строки к нижнему регистру - stringName.toLowerCase()
- toUpperCase - Преобразует все символы строки к верхнему регистру - stringName.toUpperCase()
Потомки объектов JavaScript
Некоторые объекты языка JavaScript имеют потомков. В частности, гиперсвязь является объектом, наследованным из объекта document. В языке JS наследованные объекты называются также свойствами. Например, множество гиперсвязей является свойством объекта document, а links - именем этого свойства. Таким образом, трудно провести четкую границу между объектами и свойствами. Гиперсвязь, являясь объектом, в то же время представляет собой свойство links объекта document.
Рассмотрим пример. Напишем простенькую программку и посмотрим, как будут создаваться объекты HTML. Тоесть, при загрузке HTML-документа в браузер соответственно будут созданы HTML-объекты на JavaScript. Теги HTML собственно служат исключительно для удобства написания документа:
<html>
<head>
<title>Пример программы</title>
</head>
<body bgcolor="White">
<form>
<input type="checkbox" checked name="chck1">Item 1
</form>
</body>
</html>
Посмотрим эквивалентную запись на JavaScript
document.title="Пример программы"
document.bgColor="White"
document.forms[0].chck1.defaultChecked=true
Как видно из примера, тегу <title> соответствует свойство document.title, а цвету фона документа, установленному в теге <body>, - свойство document.bgColor. Переключателю checkbox с именем chck1, определенному в форме, соответствует выражение document.forms[0].chck1. Свойство defaultChecked принадлежит объекту checkbox и может принимать значения true или false в зависимости от того, указан ли в теге <input> атрибут checked. Когда этот атрибут задан, переключатель отображается на экране как включенный по умолчанию.
Поскольку документ может включать несколько таких объектов, как гиперсвязи, формы и другие объекты, многие из них являются массивами. Для обращения к определенному элементу массива нужно указать его индекс. Например, forms[0] - первая форма текущего документа. Ко второй форме можно обратиться соответственно forms[1]. Заметьте, что индексы массивов в JS программах всегда начинаются с нуля.
В нашем примере объект верхнего уровня - window, потому, что любой документ загружается в окно. Например, выражения document.forms[0] и window.document.forms[0] обращаются к одному и тому же объекту, а именно к первой форме текущего документа. Однако если необходимо обратиться к форме в другом окне (фрейме), следует использовать выражение вида
parent.frames[n].document.forms[n], где n является индексом нужного элемента массива.
Перечислим объекты.
anchor (anchors[]) Множество тегов <a name> в текущем документе
button Кнопка, создаваемая при помощи тега <input type=button>
checkbox Контрольный переключатель, создаваемый при помощи тега <input type=checkbox>
elements[] Все элементы тега <form>
form (forms[]) Множество объектов тега <form> языка HTML
frame (frames[]) Фреймосодержащий документ
hidden Скрытое текстовое поле, создаваемое при помощи тега <input type=hidden>
images (images[]) Множество изображений (тегов <img>) в текущем документе
link (links[]) Множество гиперсвязей в текущем документе
navigator Объект, содержащий информацию о браузере, загрузившем документ
password Поле ввода пароля, создаваемое при помощи тега <input type=password>
radio Селекторная кнопка (radio button), создаваемая при помощи тега <input type=radio>
reset Кнопка перегрузки, создаваемая при помощи тега <input type=reset>
select (options[]) Элементы <option> объекта <select>
submit Кнопка передачи данных, создаваемая при помощи тега <input type=submit>
text Поле ввода, сооздаваемое при помощи тега <input type=text>
textarea Поле текста, создаваемое при помощи тега <textarea>
Объекты, которым соответствует массивы, являются многомерными объектами. В некоторых HTML-тегах можно определить несколько элементов, например множество элементов списка в теге <select>. Рассмотрим тег <select>, содержащий два элемента:
<form>
<select name="primer">
<option>Опция1
<option>Опция2
</select>
</form>
Тег <select> сам по себе является объектом, однако для обращения к отдельным элементам этого объекта (тегам <option>) используется массив option. Данный массив представляет собой множество значений, которые соответствует тегам <option>, содержащимся в теге <select>. В нашем примере создается два объекта: первый - объект select в целом (к нему обращаются, чтобы выяснить, сколько элементов он фактически соодержит), второй - массив options (он позволяет обращаться к отдельным элементам, содержащимся в первом объекте). Таким образом, некоторые объекты могут использовать объекты-массивы для обращения к содержащимся в них элементам. Однако это не является правилом, все зависит от структуры рассматриваемых объектов и тех объектов, из которых они унаследованы. Например, HTML-тегам <a name> . . . </a> соответствует объект anchor, являющийся элементом массива anchors, и в то же время эти теги встречаются сами по себе, а не в других тегах. Просто родительским объектом (parents) для объекта anchors является объект document, а в документе может быть определено множество меток. Окна тоже могут содержать множество документов, связанных с ними через фреймы.
Ну чтож, рассмотрим теперь каждый объект более подробно.
Дата добавления: 2018-02-28; просмотров: 684; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!