Главная » 2011 » Май » 2 » Теория с примерами по JavaScript
08:20
Теория с примерами по JavaScript

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

Код программы JavaScript, как правило, размещается непосредственно в HTML-документах. Его можно записывать в любом месте HTML-страницы. В некоторых случаях целесообразно записать одну часть программы в одном месте (например, в заголовке – элементе <HEAD>), а другую – ниже.
Это бывает необходимо, когда сначала описывается функция, а затем в теле HTML-страницы эта функция вызывается. В любом случае текст фрагмента программы заключается в элемент-контейнер <SCRIPT>.
Кроме того, для того чтобы скрыть текст программы от старых версий браузера, необходимо заключить этот текст в контейнер – комментарий HTML <!--... ...-->. Но поскольку в языке JavaScript имеется оператор, начинающийся с двойного минуса, необходимо последнюю строку контейнера записать в виде комментария JavaScript: //-->. В итоге все это должно выглядеть следующим образом:

<SCRIPT LANGUAGE="JavaScript">
<!-- // Здесь пишется текст программы. //-->
</SCRIPT>

Так же код JavaScript можно хранить в отдельных файлах. Определяется файл как источник операторов с помощью атрибута SRC тэга <SCRIPT> следующим обра-зом:

<HEAD>
<TITLE></TITLE>
<SCRIPT SRC="MyProg.js">
.....
</SCRIPT>
</HEAD>
<BODY>

Внешние файлы JavaScript должны содержать только JavaScript определения функций и операторы, в них не может быть HTML-тэгов.
Понятие функции
Функция JavaScript – это подпрограмма, которая выполняется в ответ на возник-новение какого-либо события. Вначале функцию необходимо определить. Формальный синтаксис описания функции следующий:

function <имя функции>
(<список аргументов>
{
оператор JavaScript;
оператор JavaScript;
......
оператор JavaScript;
}

Использование функций мы рассмотрим на примере открытия окон.

Создание окон в JavaScript

Для создания новых окон используется метод open() объекта window. Формат вы-зова данного метода имеет следующий вид:

window.open(url,<имя>,<параметры>,true|false);

Параметры вызова метода имеет следующие значения:
url – строка, определяющая, адрес страницы, которая будет загружена в новое ок-но;
<имя> – задает имя новому окну;
<параметры> – является строкой, которая определяет отображаемые элементы в новом окне.
true|false – четвертый параметр определяет, заменит ли URL текущий адрес (зна-чение true) в списке или будет добавлен в конец списка (значение false).

Ниже приведен пример кода, который открывает страницу в новом окне размером 400x300 пикселов, которое не имеет ни строки статуса, ни панели инструментов, ни меню:

<html>
<head>
<script language="JavaScript">
<!—

function OpenWin()

{
myWin= open("example.files/example_01.html", "displayWindow", "width=400,
height=300, status=no, toolbar=no, menubar=no");
}
//-->
</script>
</head>
<body>

<center>
<input type="button"
value="Открыть новое окно"
onClick="OpenWin()">
</center>

</body>
</html>

Ниже написанн пример динамического вывода информации на страницу.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>SCRIPT!</TITLE>
</HEAD>
<BODY>
<SCRIPT>
document.write("Эта страница написана на JavaScript!");
</SCRIPT>
</BODY>
</HTML>

Аналагичное можно проделать и динамически поместив это дело в функцию:
<script language="JavaScript">
<!--

function NewWin()
{
// создать новое окно
NewDoc=window.open("", "NewWindow",
"width=500,height=200,status=yes,toolbar=yes,menubar=yes");

// открыть объект document для последующей печати
NewDoc.document.open();

// генерировать новый документ
NewDoc.document.write("<html>");
NewDoc.document.write("<head>");
NewDoc.document.write("<title>Пример динамического ");
NewDoc.document.write("создания документов</title>");
NewDoc.document.write("</head>");
NewDoc.document.write("<body>");
NewDoc.document.write("<center>");
NewDoc.document.write("<font size=+3>");
NewDoc.document.write("Этот HTML-документ создан ");
NewDoc.document.write("с помощью JavaScript!");
NewDoc.document.write("</font>");
NewDoc.document.write("</center>");
NewDoc.document.write("</body>");
NewDoc.document.write("</html>");

// закрыть документ - (но не окно!)
NewDoc.document.close();
}

// -->
</script>

Переменные
Переменные в JavaScript можно не описавать в теле скрипта, однако, внутри функций их описание обязательно. Для описания переменной используется служебное слово var:
var i;
var j = 1 + 3 * 5;
var str1, str2, str3;
var x = 10, y = 20, hint = 'сделать уроки';

Существует три простых типа данных: численные, логические (булевы) и строковые (символьные), а также два состовных типа данных: объекты и массивы.

Числовые данные имеют формат с плавающей запятой и могут задаваться в произвольной форме, например, 1.349, 12, .0529, -1.5e10. Запись целых чисел возможна в восьмеричной (начинактся с O) или шестнадцатеричной (начинается с Ox) форме. Если в ходе операций возникает ошибка (например, при делении на ноль), по переменная получает значение NaN (not-a-number, не число).

Логические данные могут принимать только два значение: true (истина) и false (ложь).

Строковые данные это последовательность любых символов, цифр и специальных символов, заключенные в одинарные или двойные кавычки. Можно вкладывать кавычки одного типа в ковычки другого. Примеры строк: 'это строка', "а это еще одна 'строка'".

Объекты являются состовным типом данных. Число свойств неограниченно, можно определять новые свойства или же использовать предопределенные. Свойства имеет свое название и значение. Доступ к свойствам объекта осуществляется с помощью символа точка (.). Например, в следующей записи свойству name объекта person присваивается значение Vasya:
person.name = "Vasya";

Объекты создаются с помощью оператора new:
var person = new Object();

Существует ряд предопределенных объектов. Можно создать новый объект обладающий (наследующий) свойства уже существующего объекта следующим образом (на примере объекта Date):
var today = new Date();

Массивы
Массив представляет тип данных, к значением которых можно обратиться по индексу (числу). Для доступа к элементу массива нужно ставить в квадратных скобках индекс элемента. Имейте в виду, что первому элементу соответствует индекс - ноль. Для создания пустого массива используется оператор new Array(). Для определения размерности массива используется Array(n), где n - размерность массива.
var a = new Array();
var b = new Array(5);
a[0] = 10;
b[0] = -5;
b[1] = a[0] + b[0];

Циклы
for (нач_знач; условия; приращение)
//..блок операторов..
};

Данный цикл выполняется заданное количество раз. Начальные значения перемен-ных цикла задаются выражением нач_знач. Условия задают условия выхода из цикла и записываются в виде логических выражений. Выражение приращение задает изменение параметров цикла за одну итерацию.
Пример:

for (k=1;k<10;k+=2) {document.writeln("<br>K=",k);
};
for (i=0,j=2;i<10,j<5;i++,j++) {
document.writeln("<br>I=",i," J=",j)
};

Теперь поговорим о второй разновидности циклов в JavaScript - while. В принципе, цикл очень похож на for (хотя все циклы похожи). Но здесь общий вид другой:
while (условие) {
  //код программы
}

Как видите, здесь нет ни переменной для итерации, ни каких-либо действий после итерации. Отсюда следует вывод: чтобы выйти из цикла необходимо в самом цикле сделать так, чтобы "условие" стало ложным. Если это не сделать, то произойдёт зацикливание, а, следовательно, Ваш скрипт повиснет.

Условия
Последним важным оператором языка является условный оператор, который по-зволяет разветвить программу в зависимости от какого-либо условия. Записывается он следующим образом:

if (условие) {
// код для истинного условия
}
else
{
// код для ложного условия
};

Данный оператор также может быть записан более коротко без использования else:
if (условие) {
// код для истинного условия
};
Этот оператор используется очень часто и даже является составной частью циклов.

Объекты

Объекты бывают
    встроенные (внутренние) — то есть объекты языка JavaScript. К ним относятся:
        String — строка текста;
        Array — массив;
        Date — дата и время;
        Math — математические функции;
        Object — конструктор для создания пользовательских объектов;
        Дополнительные объекты — см. здесь.;

    объекты браузера — создаются автоматически при загрузке документа в браузер:
        window — объект верхнего уровня в иерархии объектов браузера;
        document — содержит свойства, которые относятся к текущему HTML-документу;
        location — содержит свойства, описывающие местонахождение текущего документа, например, адрес URL;
        navigator — содержит информацию о версии браузера;
        history — содержит информацию обо всех ресурсах, к которым пользователь обращался во время текущего сеанса;
    связанные с тэгами HTML и стилями CSS — в JavaScript большинству тэгов HTML и стилей CSS соответствуют свойства объекта document, которые сами также являются объектами;
    пользовательские объекты — это объекты, которые создаём мы сами с помощью конструктора Object. Для этого нужно поднатореть в программировании. Надеюсь, что когда-нибудь дойдём и до них.

Методы
Методы — это своеобразные «рычаги» для управления объектами. За объектами в JavaScript закреплено множество различных методов. К «высшему пилотажу» относится создание собственных методов для объектов. В коде методы указываются вместе со своими объектами (через точку):
document.write("<p>Это первый абзац.</p>")

Свойства
Наличие свойств — специфическая особенность объектно-ориентированных языков. Собственно, наличие свойств и делает объект объектом, «вещью», которая имеет свой «характер» и с которой можно работать. Как и методы, свойства указываются вместе с объектами, через точку. Но параметры свойств ставятся не в скобки, а через оператор назначения или равенства:

document.images[4].height = 300
navigator.appName == "Netscape"
Категория: Статьи | Просмотров: 1574 | Добавил: De:Light | Теги: массивы, операторы, условия, JavaScript, циклы, примеры, WEB | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Вы вошли как: Гость
14:01
Вы вошли как: Гость
Календарь
«  Май 2011  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031
Категории
Новости [11]
Статьи [23]
GLscene,Web Design,IT,etc...
Счетчик

Онлайн всего: 1
Гостей: 1
Пользователей: 0