Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Основные методы объекта String




1 Метод charAt(<индекс>) - возвращает строку, состоящую из одного символа, занимающего в строке указанную позицию.

Приведем несколько примеров. Пусть имеется строка:

S = new String (“Привет всем!”);

Тогда конструкции:

alert (S.charAt(0)); alert (S.charAt(S.length-1));

выведут на экран соответственно первый («П») и последний («!») символы этой строки (напоминаем, что нумерация символов в строке начинается с нуля).

2 Метод charCodeAt(<индекс>) – результат работы этого метода аналогичен предыдущему, только возвращается число, представляющее собой код символа, расположенного на позиции, заданной номером индекс.

Примеры:

alert ("abпя".charCodeAt(0)); // Будет выведено 97

alert ("abпя".charCodeAt(2)); // Будет выведено 1087

alert ("abпя".charCodeAt(3)); // Будет выведено 1103

alert ("abпя".charCodeAt(10)); // Будет выведено NaN

alert ("".charCodeAt(0)); // Будет выведено NaN

3 Метод fromCharCode(<число1>, <число2>, …, <числоN>) – возвращает строку символов, числовые коды которой указаны в качестве параметров.

Например, конструкция

alert (String.fromCharCode(97, 1087, 1103));

отобразит на экране диалоговое окно со строкой «aпя».

4 Метод concat(<строка>) – производит конкатенацию (объединение) строк. Результатом работы этого метода будет новая строка.

Например, после выполнения следующих конструкций:

A = new String(“Тепло”);

B = new String(“ход”);

A = A.concat(B);

переменная A будет иметь значение «Теплоход».

5 Метод indexOf(<подстрока>,<индекс>) – производит поиск подстроки, заданной в качестве первого параметра, и возвращает номер ее первого вхождения в строку, для которой выполняется этот метод.

Возвращаемое число отсчитывается от 0. Если поиск не удачен, то возвращается –1. Поиск в пустой строке всегда возвращает –1. Поиск пустой строки всегда возвращает 0.

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

Приведем несколько примеров использования этого метода. Пусть есть строка:

A = new String(“Привет всем!”);

Тогда выполнение следующих конструкций приведет к таким результатам:

alert (A.indexOf("ем")); // Значение равно 9

alert (A.indexOf("ура")); // Значение равно -1

alert (A.indexOf("в")); // Значение равно 3

alert (A.indexOf("в",5)); // Значение равно 7

alert (A.indexOf("в",8)); // Значение равно -1

alert (A.indexOf("")); // Значение равно 0

6 Метод lastIndexOf(<подстрока>,<индекс>) – производит поиск подстроки, заданной в качестве первого параметра, и возвращает номер ее первого вхождения в строку, для которой выполняется этот метод. При этом поиск начинается с конца исходной строки, но возвращаемый индекс отсчитывается от ее начала, то есть от 0.

Приведем несколько примеров (строка A определена в предыдущем методе):

alert (A.lastIndexOf("ем")); // Значение равно 9

alert (A. lastIndexOf("в")); // Значение равно 7

alert (A. lastIndexOf("в",5)); // Значение равно 3

alert (A. lastIndexOf("в",2)); // Значение равно -1

7 Метод localeCompare(<строка>) – позволяет сравнивать строки в кодировке Unicode, то есть с учетом используемого браузером языка общения с пользователем.

Общий вид использования метода следующий:

<строка1>.localeCompare(<строка2>);

Результатом работы метода является число. Если сравниваемые строки одинаковы, то число равно 0. Если строка1 меньше, чем строка2, то возвращается отрицательное число, в противном случае – положительное. Сравнение строк происходит по правилу сравнения десятичных дробей (сравниваются коды соответствующих символов).

Приведем пример. Пусть определены две строки:

A = new String("abc");

B = new String("bad");

При выполнении конструкции:

alert (A.localeCompare(B));

на экран будет выведено диалоговое окно со значением –1, что свидетельствует о том, что первая строка меньше второй. Действительно, строки различаются в первом символе, причем код символа «b» больше, чем код символа «a».

Сравним следующие строки:

A = new String("abc");

B = new String("я");

Опять строка A будет меньше строки B, так как код символа «я» больше кода символа «а».

8 Метод slice(<индекс1>,<индекс2>) – возвращает подстроку исходной строки, начальный и конечный индексы которой указываются параметрами, за исключением последнего символа. Данный метод не изменяет исходную строку.

Если второй параметр не указан, то возвращается подстрока с начальной позицией индекс1 и до конца строки. Отсчет позиций начинается с начала строки. Первый символ строки имеет индекс 0. Если второй параметр указан, то возвращается подстрока исходной строки, начиная с позиции индекс1 и до позиции индекс2, исключая последний символ. Если второй параметр отрицателен, то отсчет конечного индекса производится от конца строки. В этом заключается основное отличие метода slice() от substr(). Сравните также этот метод с методом substring().

В качестве примера проведем анализ адреса электронной почты.

A = new String (“[email protected]”);

i = A.indexOf(“@”); // Значение равно 6

N = A.slice(0,i); // Значение равно «ivanov»

D = A.slice(i+1,-3); // Значение равно «mail»

9 Метод split(<разделитель>,<ограничитель>) – возвращает массив элементов, полученных из исходной строки.

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

Если разделитель – пустая строка, то возвращается массив символов строки.

Приведем пример. Пусть есть строка:

A = "Привет всем!";

Выполнение следующих конструкций приведет к таким результатам:

A.split(" "); // Значение – массив из элементов: «Привет», «всем!»

A.split("e"); // Значение – массив из элементов: «Прив», «т вс», «м!»

A.split("e",2) // Значение – массив из элементов: «Прив», «т вс»

10 Метод substr(<индекс>,<длина>) – возвращает подстроку исходной строки, начальный индекс и длина которой указываются параметрами. Данный метод не изменяет исходную строку.

Если второй параметр не указан, то возвращается подстрока с начальной позицией индекс1 и до конца строки. Отсчет позиций начинается с начала строки. Первый символ строки имеет индекс 0. Если второй параметр указан, то возвращается подстрока исходной строки, начиная с позиции индекс1, и с общим количеством символов, равным параметру длина. Сравните этот метод с методами slice() и substring().

В качестве примера проведем анализ адреса электронной почты.

A = new String (“[email protected]”);

i = A.indexOf(“@”); // Значение равно 6

N = A.substr(0,i); // Значение равно «ivanov»

D = A.substr(i+1); // Значение равно «mail.ru»

11 Метод substring(<индекс1>,<индекс2>) – возвращает подстроку исходной строки, начальный и конечный индексы которой указываются параметрами. Данный метод не изменяет исходную строку.

Порядок индексов не важен: наименьший из них считается начальным. Отсчет позиций начинается с начала строки. Первый символ строки имеет индекс 0. Символ, соответствующий конечному индексу, не включается в возвращаемую строку. Сравните этот метод с методами substr() и slice().

Перепишем пример анализа адреса электронной почты с использованием рассматриваемого метода.

A = new String (“[email protected]”);

i = A.indexOf(“@”); // Значение равно 6

N = A.substring(i,0); // Значение равно «ivanov»

D = A.substr(i+1,A.length); // Значение равно «mail.ru»

12 Методы toLocaleLowerCase(), toLowerCase() – переводят строку в нижний регистр.

13 Методы toLocaleUpperCase(), toUpperCase() – переводят строку в верхний регистр.

Методы toLocaleLowerCase() и toLocaleUpperCase() учитывают установленную кодировку браузера.

Приведение строк к одному и тому же регистру требуется, например, при сравнении содержимого строк без учета регистра. Кроме того, многие серверы чувствительны к регистру, в котором определены имена файлов и папки (обычно требуется, чтобы они были определены в нижнем регистре).

Работа с массивами

Объект Array очень удобен для хранения массивов данных. Массив представляет собой набор элементов. Доступ к отдельному элементу произволится по имени и индексу (номеру). Нумерация элементов в JavaScript начинается с нуля.

Например, массив названий дней недели можно задать следующим образом:

DayNames=new Array («воскресенье», «понедельник», «вторник», «среда», «четверг», «пятница», «суббота»);

Для доступа к отдельным элементам массива используют конструкцию: имя_массива [индекс]. С учетом предыдущего объявления конструкция: alert (DayNames[0]); выведет на экран диалоговое окно, в котором будет выведен текст «воскресенье».

Приведенный выше массив можно задать по-другому:

DayNames=new Array (7); // Количество элементов массива

/*Присвоим каждому элементу массива конкретное значение*/

DayNames[0] = «воскресенье»;

DayNames[1] = «понедельник»;

......

DayNames[6] = «суббота»;

Свойство length объекта Array содержит число элементов массива – его длину. Например, значение конструкции DayNames.length (с учетом предыдущего определения массива DayNames) будет равно 7.

Массивы, рассмотренные выше, являются одномерными. Их можно представить себе в виде таблицы из одного столбца. Однако элементы массива могут содержать данные различных типов, в том числе и объекты, а значит, и массивы. Если в качестве элементов некоторого одномерного массива создать массивы, то получится двухмерный массив. Обращение к элементам такого массива происходит в соответствии со следующим синтаксисом:

имя_массива [индекс_уровня1] [индекс_уровня2].

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

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

1 Метод concat() – объединяет два массива в третий массив, который является результатом работы этого метода. Исходные массивы не изменяются.

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

A = new Array (1,2,3); // Первый массив

B = new Array («первый», «второй»); // Второй массив

// Третий массив, результат объединения массивов A и B

C = A.concat(B);

2 Метод join(<разделитель>) – создает строку из элементов массива с указанным разделителем между ними. Возвращает строку символов (возможно, пустую).

Пример. Пусть имеется массив: A = new (1, «первый»,2, «второй»); и выполняется такая конструкция: S = A.join(«,»);. В результате строка S будет иметь следующий вид: «1,первый,2,второй».

3 Метод pop() – удаляет последний элемент массива и возвращает его значение.

4 Метод shift() – удаляет первый элемент массива и возвращает его значение.

5 Метод push(<значение>) – добавляет указанное значение в конец массива и возвращает новую длину массива.

6 Метод unshift(<значение>) – добавляет указанное значение в начало массива и возвращает новую длину массива.

7 Метод reverse() – изменяет порядок следования элементов массива на противоположный. Исходный массив при этом изменяется.

Пример. Пусть имеется массив: A = new Array (1,2,3);. Тогда после выполнения конструкции: A.reverse(); массив A будет следующим: 3 2 1.

8 Метод slice(<индекс1>, <индекс2>) – создает массив из элементов исходного массива с индексами указанного диапазона. Результатом работы метода является новый массив.

Второй параметр (конечный индекс) не является обязательным. Если он не указан, то создаваемый массив содержит элементы исходного массива, начиная с индекса индекс1 и до конца. В противном случае, создаваемый массив содержит элементы исходного массива, начиная с индекса индекс1 и до индекса индекс2, за исключением последнего. При этом исходный массив остается без изменений.

Пример. Пусть имеется массив: A = new (1, «первый»,2, «второй»);. Тогда при выполнении следующих конструкций будут получены такие результаты:

B = A.slice(1,3); // Массив B: 1 «первый»

C = A.slice(2); // Массив C: «первый» 2 «второй»

9 Метод sort(<функция сортировки>) – сортирует (упорядочивает) элементы массива, пользуясь функцией сравнения. Исходный массив изменяется.

Если функция сортировки не указана, то сортировка производится на основе сравнения ASCII-кодов символов значений. Это удобно для сравнения символьных строк, но не совсем подходит для сравнения чисел. Так, число 425 при сортировке считается меньшим, чем 78, поскольку сначала сравниваются первые символы и только в случае их равенства сравниваются следующие, и т. д. Таким образом, метод sort() без параметра подходит для простой сортировки массива со строковыми элементами.

Можно создать свою собственную функцию для сравнения элементов массива, с помощью которой метод sort() отсортирует весь массив. Имя этой функции (без кавычек и круглых скобок) передается методу в качестве параметра. При работе метода функции передаются два элемента массива, а ее код возвращает методу значение, указывающее, какой из элементов должен следовать за другим. Например, сравниваются два элемента, х и у. Тогда, в зависимости от числового значения (отрицательного, 0 или положительного), возвращаемого функцией сравнения, методом sort() принимается одно из трех возможных решений:

· значение меньше 0 – y следует за x;

· значение равно 0 – порядок следования не изменяется;

· значение больше 0 – x следует за y.

Проиллюстрируем это следующим примером. Пусть имеется следующий массив: A = new (1, 23, 2, 47, 8);. Функция сортировки имеет следующий вид: function f(x,y) {return x-y;}. Тогда конструкция: A.sort(f); отсортирует массив по возрастанию.

10 Метод splice(<индекс>, <количество>, <элемент1>, <элемент2>, …, <элементN>) – удаляет из массива несколько элементов и возвращает массив из удаленных элементов или заменяет значения элементов. Результатом работы этого метода является новый массив, причем исходный массив также изменяется.

Первые два параметра обязательны, а следующие – нет. Первый параметр является индексом первого удаляемого элемента, а второй – количеством удаляемых элементов. Например, пусть имеется массив: A = new (1, 23, 2, 47, 8);. После выполнения конструкции: B = A.splice(1,3); массив B будет содержать значения: 23, 2, 47, а массив A – значения 1 и 8 (не забывайте, что нумерация элементов массива начинается с нуля!).

Метод splice() позволяет также заменить значения элементов исходного массива, если указаны третий и, возможно, последующие параметры. Эти параметры представляют значения, которыми следует заменить исходные значения элементов массива. При таком использовании метода splice() важен первый параметр (индекс), а второй (количество) может быть равным нулю. В любом случае, если количество элементов замены больше значения второго параметра, то часть элементов исходного массива будет заменена, а часть элементов будет просто вставлена в него. При этом метод splice() возвращает другой массив, состоящий из элементов исходного, индексы которых соответствуют первому и второму параметрам. Но это справедливо, если второй параметр не равен 0.

Приведем несколько примеров. Пусть массив A состоит из следующих элементов: A = new (1, 23, 2, 47, 8);. Образуем массив B следующим образом: B = A.splice(1, 3, 4, «первый», «второй»);. Тогда массив B будет иметь следующие элементы: 23, 2 и 47, а массив A – значения: 1, 4, первый, второй, 8.

Создадим массив C следующим образом: С = A.splice(1, 0, 4, «первый», «второй»,5, 25);

В результате массив C будет пустым (второй параметр равен нулю), а массив A будет содержать следующие элементы: 1, 4, первый, второй, 5, 25.

Использование функций

Чтобы использовать функцию, необходимо вначале ее определить. Формальный синтаксис описания функции следующий:

function ИмяФункции (список формальных аргументов,

Разделенных запятыми)

{ …

//Тело функции

return значение;

}

Блок операторов, заключенных в фигурные скобки, называется телом функции. В теле функции могут использоваться формальные аргументы – переменные, имена которых перечислены через запятую. При вызове функции в скобках после ее имени указывается список фактических параметров – формальные аргументы заменяются на фактические, а тело функции как бы подставляется на место ее вызова и выполняется.

Операторы тела функции могут включать в себя вызовы других функций, определенных в текущем приложении. Различие между определением и вызовом функции традиционно для языков программирования. Определение функции просто называет функцию и задает выполняемые ею действия. Запрос функции исполняет указанные действия с фактическими параметрами. Желательно определять функции для страницы в разделе <HEAD> документа. В этом случае все функции будут определены прежде, чем будет загружено содержание документа.

Команда return, возвращающая значение функции, может быть не одна, а может и вовсе отсутствовать. В последнем случае функция не возвращает никакого значения, и ее вызов нельзя использовать в выражениях.

Команда вызова функции имеет следующий вид:

ИмяФункции (список фактических аргументов, разделенных запятыми);

Длина имени функций и переменных в JavaScript не ограничивается, но имя должно быть одним словом (без пробелов). Имя строится из латинских букв, арабских цифр, знаков подчеркивания и некоторых других (не рекомендуемых) спецзнаков. Первым символом имени должна быть буква или знак подчеркивания.

В JavaScript действуют следующие правила передачи аргументов функции:

· аргументы примитивных типов передаются функции по значению. Иными словами, формальным аргументам присваиваются значения фактических аргументов на момент вызова, и если даже операторы в теле функции изменят значение какого-либо аргумента, то это изменение не коснется переменной, чье значение передавалось в качестве аргумента;

· объекты (и встроенные, и определенные пользователем) передаются по ссылке. Это означает, что все изменения свойств объекта в теле функции производятся непосредственно в самом объекте, а не в его локальной копии и, следовательно, сохраняются после возврата из функции.

Рассмотрим вопросы, связанные с определением области видимости переменных. Напомним, что переменные создаются либо при выполнении оператора присваивания, либо с помощью служебного слова var. Здесь возможны следующие ситуации.

1 Переменная первый раз встречается слева от оператора присваивания в теле функции. В этом случае ее можно использовать как в пределах этой функции, так и вне ее. Таким образом, эта переменная является глобальной.

2 Если переменная определена во внешней программе, то ее можно использовать внутри функции. При этом она продолжает существовать после завершения выполнения этой функции, то есть является глобальной.

3 Если в теле функции для определения переменной используется служебное слово var, то такая переменная существует только в теле функции, то есть является локальной.

Встроенные функции

Помимо функций, определяемых пользователем, в программах JavaScript можно использовать еще так называемые встроенные функции. Эти функции встроены в интерпретатор JavaScript, т.е. они объявлены и реализованы внутри него.

Перечислим некоторые встроенные функции.

1 eval(<строка>) – вычисляет выражение, находящееся в строке, как если бы оно находилось в коде программы.

2 isFinite(<выражение>) – проверяет, является ли выражение конечным числом. Значение false возвращается в случае, если выражение является не числом или бесконечностью. В противном случае – true.

3 isNaN(<выражение>) – возвращает true, если выражение является не числом (т.е. бесконечностью или ошибкой, NaN (Not a Number) – не число), и false – если число.

4 parseFloat(<строка>) – преобразует строку в число с плавающей запятой. Если строка не может быть преобразована, то возвращает NaN.

5 parseInt (<строка>,<основание>) – преобразует строку в целое число системы счисления, определяемой основанием. По умолчанию используется десятичная система счисления. Если < строка > не может быть преобразована, то возвращает NaN.

Функции ввода и вывода

Перечислим функции, которые используются для выполнения указанных операций.

1 Функция alert(). Она выводит диалоговое окно с сообщением и кнопкой OK. Общий вид этой функции следующий:

 
 


Alert(сообщение)

2 Функция confirm() позволяет вывести диалоговое окно с сообщением и двумя кнопками OK и Отмена (Cancel). Общий вид этой функции следующий:

 

S =confirm(сообщение)

 

В отличие от функции alert() данная функция возвращает логическое значение, которое помещается, в нашем случае, в переменную S. Если пользователь щелкнул по кнопке OK, то возвращается значение true. Если был произведен щелчок по кнопке Отмена (Cancel), то возвращается значение false.

3 Для ввода данных используется функция prompt(), общий вид которой следующий:

 

X = prompt(сообщение, значение по умолчанию поля ввода);

При выполнении этой конструкции на экране появляется диалоговое окно, в котором отображается поясняющее сообщение (1-й параметр функции), поле для ввода данных со значением, заданным по умолчанию (2-й параметр функции), а также две кнопки OK и Отмена (Cancel). Если пользователь щелкнет по кнопке OK, то функция возвращает строку, содержащую значение поля ввода. Если пользователь щелкает по кнопке Отмена (Cancel), то возвращается логическое значение false.

Параметры функции prompt() не являются обязательными. Если они отсутствуют, то выводится окно без сообщения, а в поле ввода данных находится значение undefined (не определено). Если нужно избежать появления этого слова, то в качестве второго параметра можно использовать пустую строку («»).

Создание сценариев

Браузер, как и другие Windows-приложения, разработан с использованием технологии Automation, базирующейся на принципах объектно-ориентированного программирования. Это значит, что созданное таким образом приложение не только представляет собой иерархически упорядоченный набор объектов, но и предоставляет другим приложениям возможность управлять работой этих объектов. Поэтому здесь мы рассмотрим, во-первых, часть иерархии объектов браузера, и, во-вторых, основные свойства и методы этих объектов, которые позволят нам управлять «внешним видом» (за это «отвечают» свойства) и «поведением» (а за это – методы) этих объектов.

На рисунке 1 приведен фрагмент иерархии объектов, образующих браузер.

 
 

 

 


Рисунок 1 – Фрагмент иерархии объектов

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

Некоторые объекты могут группироваться в наборы. Поясним, что это такое. Пусть, например, имеется документ, в котором расположено несколько форм. Так вот, в данном документе имеется набор forms, который состоит из нескольких (а, может быть, даже из одного, если форма одна!) элементов form.

Продолжим характеризовать объекты и наборы. Содержимое окна браузера может представлять собой набор фреймов, которые как раз представляют собой набор объектов frames. Каждый объект этого набора (объект frame), имеет в своем подчинении объект document, который, как понятно из его названия, содержит описание документа. К основным объектами документа (левая часть рисунка 1) мы вернемся чуть позже, а сейчас продолжим перечисление объектов window. Объект location хранит информацию о текущем URL-адресе. Объект navigator предназначен для получения информации о браузере. Объект history является массивом документов (отсчет в массиве начинается с единицы), открытых за текущий сеанс работы с браузером. Используя данный объект можно организовать повторную загрузку документов.

Перечислим основные наборы объекта document. Набор links представляет собой массив гиперссылок. Набор anchors представляет собой массив меток документа, на которые осуществляется переход по гиперссылкам. Набор forms является массивом форм документа (отсчет элементов массива начинается с нуля). Каждый объект form, входящий в этот набор, имеет набор подчиненных объектов elements, который представляет собой перечень управляющих элементов, расположенных на этой форме (кнопки, меню, поля для ввода многострочного текста и т.п.).

Объект window

Объект window представляет собой окно браузера и является начальным (корневым) объектом. Перечислим основные свойства, методы и события этого объекта (таблица 1).

Таблица 1 – Основные свойства, методы и события объекта window

Название Описание
Свойства
defaultStatus Значение по умолчанию строки состояния браузера
document Ссылка на объект document в текущем окне
self Ссылка на текущее окно
status Ссылка на строку состояния
frames Ссылка (имя фрейма или его номер) на массив фреймов текущего окна
name Имя окна
parent Ссылка на родительский объект
top Ссылка на самый верхний в иерархии объект window
dialogTop, dialogLeft, dialogHeight, dialogWidth Соответственно координата Y, координата X, высота и ширина окна (в пикселях), созданного методом showModalDialog
Методы
alert(<строка>) Вывод диалогового окна с заданной строкой и кнопкой OK
<переменная>= confirm(<строка>) Вывод диалогового окна с заданной строкой и кнопками OKиCancel. В переменную помещается true (нажата OK) или false (нажата Cancel)
<переменная>= prompt(<строка сообщения>, <значение по умолчанию>) Вывод диалогового окна со строкой ввода, в которой находится значение по умолчанию. Если нажата кнопка OK, то в переменную помещается значение из строки ввода. При нажатии Cancel –значение null (пусто)
focus Получение фокуса
blur Потеря фокуса
close Закрытие окна
<переменная>= setInterval(<процедура>, <время в миллисекундах>) Указывает процедуре выполняться периодически через заданное количество миллисекунд
clearInterval(<переменная>) Обнуляет таймер, заданный методом setInterval

 


Продолжение таблицы 1

<переменная>= setTimeout(<процедура>, <интервал>) Определяет имя процедуры, выполняемой один раз по прошествии указанного временного интервала (в миллисекундах). Переменная используется для завершения выполнения этого метода методом clearTimeout
clearTimeout(<переменная>) Завершение выполнения процедуры, связанной с указанной переменной
clearInterval(<переменная>) Обнуляет таймер, заданный методом setInterval
open (<URL-адрес>,<имя нового окна>, <параметры>) Открытие HTML-документа с заданным адресом в новом окне. Параметры: · directories=yes или no – вывод панели Ссылки; · height=число – высота окна; · width=число – ширина окна; · location=yes или no – наличие панели адресов; · menuBar=yes или no – наличие меню; · resizable=yes или no – возможность изменения размеров окна; · scrollbars=yes или no – наличие полос прокрутки; · status=yes или no – отображать ли строку состояния; · toolBar=yes или no – наличие панели инструментов
execScript (<процедура>, <язык процедуры>) Выполнение процедуры с указанным именем. Второй параметр (значение “VBScript” или “JavaScript”) может отсутствовать
showModalDialog (<URL-адрес>, <аргументы>, <возможности>) Выводит диалоговое HTML-окно. Второй и третий параметры могут отсутствовать
navigate (<URL-адрес>) Загрузка новой страницы с указанным адресом
showHelp (<URL-адрес>, <аргументы>) Вывод файла справки
События
onload() Наступает после загрузки документа
onunload() Наступает перед выгрузкой документа
onresize() Наступает при изменении размеров окна
onscroll() Наступает при прокрутке окна
onfocus() Наступает при получении фокуса
onblur() Наступает при потере фокуса
onhelp() Наступает после нажатия клавиши F1, когда окно находится в фокусе

Объект location

Он содержит информацию об URL-адресе текущей страницы, а также методы, позволяющие обновлять страницы. Основные свойства и методы этого объекта приведены в таблице 2.

Таблица 2 – Основные свойства и методы объекта location

Название Описание
Свойства
hash Ссылка внутри документа. В URL-адресе она указывается после символа #

Продолжение таблицы 2

host Содержит имя сервера
hostname Содержит номер порта
href Содержит текущий URL-адрес
pathname Содержит путь к текущему документу
protocol Содержит название протокола передачи данных
Методы
assign (<URL-адрес>) Загружает другую страницу. Этот метод эквивалентен изменению свойства window.location.href
reload() Обновляет текущую страницу
replace (<URL-адрес>) Загружает страницу, URL-адрес которой задан

Объект navigator

Объект navigator содержит информацию о производителе браузера, его версии и возможностях. Перечислим основные свойства этого объекта (таблица 3).

Таблица 3 – Основные свойства объекта navigator

Название Описание
Свойства (только для чтения)
appCodeName Код браузера
appName Имя браузера
appVersion Версия браузера
userAgent Название браузера, посылаемое по HTTP-протоколу. Как правило, содержит ту же самую информацию, что и предыдущие три свойства
userAgent Название браузера, посылаемое по HTTP-протоколу. Как правило, содержит ту же самую информацию, что и предыдущие три свойства

Объект history

Объект history содержит информацию об адресах, которые браузер посетил во время текущего сеанса. Мы можем передвигаться по этому списку с помощью сценария, загружая страницы, ссылки на которые он содержит. Объект history имеет только одно свойство и три метода (таблица 4).

Таблица 4 – Свойство и методы объекта history

Название Описание
Свойство
length Число документов в массиве
Методы
back() Переход на предыдущий документ
forward() Переход на последующий документ
go (<номер>) Переход на указанное количество документов. Если номер положителен, то переход вперед, если отрицателен – то назад

Объект document

Этот объект – самый важный в объектной модели. Все элементы HTML-документа являются свойствами объекта document и одновременно объектами с точки зрения языка сценариев JavaScript. Для удобства некоторые объекты объединены в наборы (смотри рисунок 1), которые еще называют коллекциями. Например, коллекция всех картинок в HTML-документе называется images, а коллекция всех ссылок – links. Чтобы обратиться к объекту из коллекции, нужно указать его номер в этой коллекции. Таким образом, коллекция представляет собой аналог массива, причем нумерация элементов коллекции также начинается с 0.

На рисунке 2 приведена иерархическая схема объектного представления HTML-документа.

 
 

 


Рисунок 2 – Иерархическая схема объектного представления

HTML-документа

Первый объект в этой структуре – document. Первый элемент HTML-документа – картинка с именем Image1. Она представляется в виде объекта images[0]. Чтобы получить доступ к этому элементу страницы, требуется записать: document.images[0]. Доступ к элементу с именем Button обеспечивает такая конструкция: document.forms[0].elements[2].

Существует другой способ доступа к элементам страницы: с использованием имени элемента. В этом случае вместо указания названия набора и номера элемента в наборе указывается имя элемента. Первый пример с учетом сказанного можно записать так: document.Image1, а второй пример – так: document.MyForm.Button

Основные наборы (коллекции), свойства, методы и события объекта document перечислены в таблицах 5 и 6.

Таблица 5 – Основные коллекции объекта document

Название Описание
all Коллекция всех тэгов и элементов в основной части документа
anchors Коллекция всех закладок (тэгов типа <A NAME=…>) в документе
forms Коллекция всех форм на странице
frames Набор всех фреймов, определенных в тэге <FRAMESET>
images Набор всех графических элементов (картинок) на странице
links Набор всех гиперссылок на странице

 


Таблица 6 – Основные свойства, методы и события объекта document

Название Описание
Свойства
alinkColor Задает цвет активной ссылки
linkColor Задает цвет непосещенной ссылки
vlinkColor Задает цвет посещенной ссылки
bgColor Определяет цвет фона док
Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...