Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Синтаксис языка JavaScript и основы программирования на нем




В целом язык JavaScript представляет собой классиче­ский язык программирования, по синтаксису во многом по­добный Си и включающий в себя ряд операторов, реализую­щих большинство типовых алгоритмических конструкций: условный оператор, циклы while и for и пр., в дополнение к которым предусмотрено большое количество стандартных методов (которые в JavaScript являются аналогами библио­течных подпрограмм). Все это позволяет реализовывать же­лаемые интерактивные действия в достаточно широких пре­делах возможностей.

Приведенная здесь информация касается работы с брау­зером Internet Explorer версий 4.0 и 5.0. В более ранних версиях (например, 3.0) и браузерах семейства Netscape не все указанные способы записи (события, функции) работа­ют корректно либо могут иметь иной синтаксис.

Константы

В качестве констант в JavaScript могут быть использованы: • текстовые («литералы») — набор символов, представля­ющий собой некий текст (например, присваиваемый пе­ременной в качестве значения) или символьную запись числа, записываемый в кавычках (двойных или «одинарных» из апострофов); для включения в состав константы некоторых символов, используемых как слу­жебные, используется нотация, принятая в Си-подоб­ных языках программирования (например, для ввода кавычек служит комбинация \ ", для вставки команды перехода на новую строку используется пара комбина­ций \r\n и т. п.);

• целые числа - десятичные (для них используется об­
щепринятый способ записи), восьмеричные (отличают­
ся наличием лидирующего нуля слева, например 025 ) и
шестнадцатеричные (признак — префикс 0х перед соб­ственно записью числа, например 0xFE83);

• вещественные числа с плавающей точкой - числа, за­
пись которых включает в себя десятичную точку и/или
символ е (либо Е) с последующей записью порядка (при­
мер: 1,25*10-15записывается как 1.25е-15);

• логические - true и false (в большинстве версий
JavaScript поддерживается также соответствие числа
0 значению false, а числа 1 — значению true);

• null - специальная константа, являющаяся своего
рода аналогом «третьего состояния» в логике и обозна­чающая отсутствие какого бы то ни было значения (единственно допустимый случай ее использования - присваивание null какой-либо переменной, чтобы «от­менить» ранее присвоенное ей значение).

Типы данных

В JavaScript (особенно при работе с размещенными на Web-странице формами) основным является текстовый тип, поскольку именно он присущ возвращаемым в скриптовую программу значениям VALUE. Поэтому нередки ситуации, когда, поместив, например, в поле ввода текста некоторое числовое значение, предоставив пользователю изменить его по своему усмотрению и затем считав новое значение в ту же самую переменную, вы тем самым измените тип значения этой переменной с числового на текстовый, так что последу­ющий оператор сложения будет воспринят как конкантена-ция и второе слагаемое окажется приписанным справа к пер­вому (скажем, результатом присваивания tstrl=tbox+3 при tbox=5 окажется не число 8, а строка «53»). В JavaScript ради упрощения работы с этим языком отсутствует требова­ние обязательного объявления типа переменных, но — лиш­нее подтверждение поговорки, что недостатки всегда явля­ются продолжением достоинств, — это удобство порождает и сложности с отслеживанием всевозможных изменений типа значений переменных.

Избежать подобных казусов позволяет учет при написании скрипта следующего простого правила: тип результата для суммы (другие математические действия JavaScript с символь­ными не путает!) определяется типом первого слагаемого, так что в приведенном выше примере присваивание следует запи­сать так: tstrl=3+tbox (цифра 3 - без кавычек!).

Массивы и записи

Для организации массива в JavaScript используется сле­дующая типовая конструкция:

var <имя массива> = new Array();

Фактически сразу после выполнения этого действия мож­но считать, что создан новый массив с указанным именем и практически неограниченной длиной, ячейки которого по умолчанию имеют значение null. Далее можно как присваи­вать ячейкам массива требуемые значения, так и использо­вать их в составе каких-либо операций, причем для обраще­ния к отдельной ячейке используется нотация:

<имя массива>[<индекс>]

где индексы отсчитываются начиная с нуля. Вводить значе­ния ячеек массива можно как операторами присваивания (набором строк или в цикле for), так и указав перечень зна­чений непосредственно в функции Array при создании мас­сива, например:

var MyMass = new Array("0", 1, "tstrng");

Здесь создается новый массив с именем MyMass (строчные и прописные буквы в имени воспринимаются как различные!) и его первым трем ячейкам присваиваются указанные значе­ния: MyMass [0 ] = "0" (текстовая константа), MyMass [1] = 1 (число), MyMass [2] = "tstrng" (текстовая константа); другие ячейки массива с большими индексами также, как и в преды­дущем случае, считаются существующими, но имеющими значение null.

Другой аспект применения массивов в JavaScript - реа­лизация записей. Например, пусть мы хотим создать запись

DPoint с элементами х, у, vx и vy. Для этого нужно описать следующую функцию:

function DPoint (х, у, vx, vy) { this. х=х; this.у=у; this.vx=vx; this.vy=vy;

после чего, вызвав ее, создать по этому описанию желаемую запись с помощью оператора new:

Avto = new DPoint (30, 50, 2, 7);

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

операции

= присваивание
< меньше
> больше
<= меньше или равно
>= больше или равно
&& логическое и
|| логическое или
! логическое не
= = равно
* умножение
/ деление
   
операторы  
if…else условное ветвление
switch переключение по условию
case внутренний переключатель switch
default действие по умолчанию
break прекращения действия условия и переход к действию по умолчанию

 

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

 

объекты и их методы  
   
объект window  
alert отображает диалоговое окно с кнопкой ОК
setTimeout устанавливает задержку выполнения операций
  объект document  
open загружает докумеент в окно
write заносит текст в документ

Приоритет операций

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

• действия в круглых скобках;

• инкремент, декремент;

• отрицание, дополнение, унарный минус;

• умножение, деление, остаток от деления;

• сложение, вычитание;

• побитовый сдвиг;

• сравнение;

• равенство, неравенство;

• побитовые операции И, ИСКЛЮЧАЮЩЕЕ ИЛИ, ИЛИ;

• логические операции И, ИЛИ;

• выбор по условию;

• присваивание.

ЛЕКЦИЯ 8. Интерактивные технологии: взаимодействие «клиент – сервер». (2 часа)




Поделиться с друзьями:


Дата добавления: 2015-05-26; Просмотров: 600; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.