Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - JavaScript.docx
Скачиваний:
26
Добавлен:
23.08.2019
Размер:
401.56 Кб
Скачать

Методы объекта Object

Object - это класс, элементами которого являются любые объекты JavaScript. У всех объектов этого класса есть общие методы. Таких методов мы рассмотрим три: toString(), valueOf() и assign().

Метод toString() осуществляет преобразование объекта в строку символов (строковый литерал). Он используется в JavaScript-программах повсеместно, но в основном неявно. Например, при выводе числа или строковых объектов. Интересно применение toString() к функциям, например, к функции pr() из предыдущего примера:

document.write(pr.toString());

Результат исполнения:

function pr()

{

a = this.src.split(':');

return a[0]+':';

}

Однако, если распечатать таким же образом объект класса Image из того же примера:

document.write(document.i1.toString());

то получим уже следующее: [object] (в Internet Explorer) либо [object Image](в Netscape Navigator). Таким образом, далеко не всегда метод toString()возвращает строковый эквивалент содержания объекта.

Аналогично ведет себя и метод valueOf(), позволяющий получить значение объекта. В большинстве случаев он работает подобно методу toString(), особенно если нужно выводить значение на страницу. Например, операторdocument.write(pr.valueOf()) выдаст то же самое, что иdocument.write(pr.toString()) выше.

В отличие от двух предыдущих методов, метод assign() позволяет не прочитать, а переназначить какое-либо свойство и метод объекта. Следует заметить, что этот метод работает не во всех браузерах и не со всеми объектами. В общем случае оператор объект.свойство = значение равносильно операторуобъект.свойство.assign(значение). Например, следующие операторы равносильны - они перенаправляют пользователя на новую страницу:

window.location = "http://intuit.ru/";

window.location.assign("http://intuit.ru/");

  1. Лекция: Программируем свойства окна браузера Объект window

Класс объектовWindow - это самый старший класс в иерархии объектов JavaScript. Объектwindow, относящийся к текущему окну (т.е. в котором выполняется скрипт), является объектом классаWindow. Класс объектов Frame содержится в классе Window, т.е. каждый фрейм - это тоже объект класса Window.

О фреймах речь пойдет ниже, а пока вернемся к объекту window. Объект window создается только в момент открытия окна. Все остальные объекты, которые порождаются при загрузке страницы, есть свойства объекта window. Более того, все глобальные переменные, определенные в данном окне, тоже являются свойствами объекта window. Таким образом, у объекта windowмогут быть разные свойства при загрузке разных страниц. Кроме того, в разных браузерах свойства объектов и поведение объектов и браузера при обработке событий может быть различным. При программировании на JavaScript чаще всего используют следующие свойства, методы и события объекта window:

Таблица 4.1. Свойства, методы и события объекта window

Свойства

Методы

События

status

defaultStatus

location

history

navigator

document

frames[]

opener

parent

self

top

open()

close()

focus()

blur()

alert()

confirm()

prompt()

setTimeout()

setInterval()

clearTimeout()

clearInterval()

Load

Unload

Focus

Blur

Resize

Error

Поскольку объект window является самым старшим, то в большинстве случаев при обращении к его свойствам и методам приставку " window." можно опускать (разумеется, в случае, если вы хотите обратиться к свойству или методу текущего окна, где работает скрипт; если же это другое окно, то необходимо указать его идентификатор). Так, например, можно писать alert('Привет') вместо window.alert('Привет'), или location вместоwindow.location. Исключениями из этого правила являются вызовы методов open() иclose(), у которых нужно указывать имя окна, с которым работаем (родительское в первом случае и дочернее во втором). Свойства frames[], self, parent и top будут рассмотрены в разделе, посвященном фреймам. Свойство opener будет рассмотрено при описании методаwindow.close().