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

Объектная модель JavaScript

Идея JavaScript очень проста. Все операции, которые можно исполнять в программе на JavaScript, описывают действия над хорошо известными и понятными объектами, которыми являются элементы рабочей области программы Netscape Navigator и контейнеры языка HTML. Собственно объектная ориентированность JavaScript на этом и кончается. Есть только объекты с набором свойств и набор функций над объектами. Последние называются методами. Кроме методов существуют и другие функции, которые больше похожи на функции из традиционных языков программирования и позволяют работать со стандартными математическими типами или управлять процессом выполнения программы. Еще в JavaScript есть события - аналог программных прерываний. Эти события также ориентированы на работу в World Wide Web, например, загрузка страницы в рабочую область Navigator'a или выбор гипертекстовой ссылки. Используя события, автор гипертекстовой страницы и программы ее отображающей может организовать просмотр динамических объектов, например, бегущая строка, или управление многооконным интерфейсом.

Описание иерархии классов

Все встроенные объекты JavaScript берут свое начало от рабочей области Netscape, и их можнопредставить в виде следующей иерархии:

Кроме этих классов объектов пользователь может создавать и свои собственные. Но обычно большинство программ используют эту систему классов и не создают новых.

Методы объектов и свойства объектов.

Каждый из этих классов имеет свойства и методы. Самыми главными их этих методов являются те, которые позволяют переназначать значения объектов. Делается это обычно по операции присваивания.

Вообще, все типы операторов, которые поддерживаются обычными языками программирования, реализованы JavaScript (+,-,*, /, %, >>,<<, +=, -=, ...). При этом оператор сложения "+" при работе со строками означает конкатенацию последних, т.е. добавление в конец строки новую строку:

s = "string1"+"string2"

Кроме операций с числами и описаний стандартных классов в JavaScript есть команды управления потоком вычислений:

Для начала мы будем использовать только один метод объекта document

document.write("Строка для вывода")

Эта функция выводит строку в документ. Причем эта срока должна быть отформатирована в соответствии с языком HTML.

Операции

В языке JavaScript используются все те же операции, что и в языке С.

исключение составляют следующие операции.

Оператор

Назначение

>>

Побитовый логический сдвиг вправо

<<

Побитовый логический сдвиг влево

>>>

Побитовый арифметический сдвиг вправо (освободившиеся биты заполняются знаковым разрядом).

Typeof

Возвращает строку, содержащую название типа операнда

Примечание

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

Типы и описание переменных

Формат описание переменных

var <Имя переменной>[=<начальное значение>];

В языке JavaScript поддерживаются следующие типы данных:

  • Целые

  • Вещественные

  • Логический тип

  • Дата (объект)

  • Строковые (объект)

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

Пример:

var S="Слово"; //строковая

var A=5, B=7; //Целые

var F=3.0, g=9.8; //Вещественные

document.writeln("A=", A,"<BR>");

document.writeln("A+B=", A+B, "<BR>");

document.writeln("F=", F, " G=", g, "<BR>");

s=5

document.writeln("S+S=", S+S, "<BR>");

document.writeln("s=", s, "<BR>");

S=5

document.writeln("S+S=", S+S,"<BR>");

Результат его работы:

A=5

A+B=12

F=3 G=9.8

S+S=СловоСлово

s=5

S+S=10

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

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

Пример

A=5+"25" //A присвоится 30

B="5"+25 // B присвоится "525"

Эту особенность можно использовать для преобразования типов

Пример

Str=""+123 // Преобразует число в строку

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]