Нижегородский файловый портал
RSS - каналы
Главное меню
Категории каталога
Мои статьи [5]
Школа покера [5]
Софт [40]
Радиолюбителям и электрикам [8]
Интернет [167]
Система [89]
Комплектующие ПК [47]
Безопасность [56]
Программирование [18]
Веб-дизайнеру [5]
Игры [6]
Полезные советы [24]
Кулинария [1]
Телефония [10]
Мобильник [17]
Планшеты [14]
Медицина [5]
Работа [4]
Домашнему мастеру [0]
Строительство и ремонт [19]
Для сада и огорода [2]
Юмор и приколы [12]
Интересное [114]
Пластики [3]
Разное [238]
Мини-чат
Правила мини-чата



Мини-чат в окне
Погода в Нижнем
Яндекс.Погода
Главная » Статьи » Программирование

Онлайн-учебник JavaScript (Часть 4)
for() - оператор цикла

Оператор for является еще одним оператором цикла. Ниже приведен синтаксис его использования:

for (переменные цикла; условие выполнения цикла; набор действий)
{
оператор_1;
оператор_2;
оператор_n;
}


Ниже приведен небольшой пример использования цикла for:

<script>
function ex3()
{
for (b=0;b<10;b=b+1)
{
window.alert('число равно '+b+' увеличиваем на 1, пока оно не станет равным 9');
}
}
</script>
<form name="">
<input type="submit" value="вызвать цикл FOR"
onclick=ex3()>
</form>

Работа цикла Javascript for() сильно похожа на Javascript while(), с тем лишь отличием, что условие и модификации переменных условия задаются сразу в объявлении цикла.

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

Несмотря на то, что оба оператора очень похожи друг на друга бывают ситуации, когда возможно использование только одного из них, например использование оператора Javascript while() может быть оправдано тогда, когда неизвестно значение входной переменной.

for in() - оператор выборки

Javascript for in() - оператор, позволяющий обходить массивы в поисках определенных символов и выполнять действия при совпадениях.

К примеру данный оператор позволяет заменить все буквы е на ё в массиве, содержащем текстовые данные или заменить все пробелы другим символом разделения и т.д.

Оператор for ... in позволяет делать всевозможные выборки из массивов, объектов и т.д. Идея работы оператора заключается в том, что он способен обнаруживать определенные символы или элементы в теле массивов и объектов и при нахождении выполнять определенные действия.

Приведем пример:

<script>
function ex4()
{
b=0;
for (v in window.document)
{
b=b+1;
document.write(v+"<BR>");
}
window.alert('Всего свойств '+b);
}
</script>
<form name="f4">
<input type="submit" value="показать свойства объекта document"
onclick=ex4()>
</form>

Данная программа производит выборку всех свойств объекта window.document и выводит их на экран при помощи метода document.write.

Использование оператора Javascript for in() позволяет упростить Ваши скрипты. Действительно, программу, приведенную в нашем примере можно организовать множеством других способов, но именно данный метод позволяет сделать скрипт максимально простым и понятным.

Break() - оператор прерывания

Иногда бывают ситуации, когда выполнение цикла должно быть прервано при возникновении определенных условий. В таких ситуациях нам поможет оператор Javascript Break().

Break() позволяет досрочно прервать выполнение тела цикла при исполнении определенного условия. Оператор не скрывает в себе никаких трудностей и у Вас вряд ли возникнут проблемы с его использованием.

Здесь мы рассмотрим интересный пример, который покажет нам еще некоторые особенности грамматики JavaScript:

<script>
function ex5()
{
b=document.f5.f6.value;
while (b>0)
{
if (b>10)
{
window.alert('число '+b+' больше 10 цикл будет прерван');
break;
}
window.alert('число равно '+b);
b=Number(b)+Number(1);

}
}</script>

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

Когда функция была вызвана и получила от пользователя число, производится открытие цикла, но только в том случае, если число больше 0. Затем производится проверка числа условием больше 10 и если оно все–таки больше, цикл прекращается при помощи Javascript Break().

Самое интересное начинается, если число меньше 10. В этом случае число начинает увеличиваться на 1 каждую итерацию.

Но как увеличить число на 1 в JS?

Если написать нечто вроде:

b = b + 1;

то обработчик javascript просто соединит текущее значение b и единицу (если b было равно 4, то оно примет значение 41), т.к. в JS "+" является оператором присоединения.

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

b=Number(b)+Number(1);

Теперь число, содержащееся в переменной b будет корректно увеличиваться на 1.

Как Вы и сами могли убедиться, оператор Javascript Break() может оказаться невероятно полезным при определенных условиях.

continue() - оператор продолжения

Оператор Javascript continue() позволяет получить максимальный контроль над исполняемой программой. Данный оператор позволяет игнорировать блок инструкций, следующих после внутри цикла и инициировать следующую итерацию. В отличие от Javascript Break(), оператор не прерывает функцию полностью, а просто начинает ее с нового цикла.

Javascript continue() - достаточно интересный JS оператор, позволяющий сильно увеличить контроль за выполнением функций.

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

Создадим программу, демонстрирующую возможности этого оператора:

<script>
function ex6()
{
b=document.f7.f8.value;
while (b!=0)
{
if (b>20)
{
window.alert('число '+b+' больше 20 цикл будет продолжен');
b=b – 1;
continue;
}
if (b<20)
{
window.alert('число '+b+' меньше 20 цикл будет прерван');
break;
}
}
}</script>
<form name="f7">
<div align="center">
<input type="text" name="f8" value="введите число">
<input type="submit" value="проверить"
onclick=ex6()>
</div>
</form>

В данном примере мы создаем пользовательскую функцию ex6(), которая проверяет значение, введенное пользователем в поле ввода. Если число больше 20, то оно будет уменьшено на 1 и при помощи Javascript continue() все остальные действия внутри цикла будут пропущены, а цикл начнется заново. Как только число станет меньше или равно 20 - цикл будет прерван при помощи оператора Javascript break().

В данном примере Вы могли самостоятельно убедиться в различных принципах работы операторов continue и break.

Javascript Return() - возвращаем значение

Оператор Javascript Return() позволяет функциям возвращать результат своей работы в виде некоторой переменной, которая может быть использована в теле основной программы.

Данный оператор позволяет функции возвращать результат своей работы обратно в основную программу. Рассмотрим пример:

<FORM>
<INPUT TYPE=submit VALUE=Submit onClick="return false;">
</FORM>


Данный пример отправляет данные, полученные из формы на обработку, но несмотря на это, возвращает браузеру ошибку, что позволяет незаметно для пользователя отправить данные на сервер. Данный пример использования оператора Javascript Return() может показаться не совсем привычным, поэтому предлагаю Вам посмотреть еще один пример:

<script>
function ex5()
{
f = document.f0.f1.value;
window.alert('введенное число равно '+f+'. Увеличиваем число на 10');
f = Number(f) + Number(10);
return f;
}
function ex6()
{
document.f0.f1.value=ex5();
}
</script>
<form name="f0">
<input type="text" name="f1" value="введите число">
<input type="sumbit" value="проверить"
onclick="ex5(); return false;">
</form>


Данный пример прекрасно показывает принцип работы оператора Javascript Return(). Здесь мы с Вами задаем две пользовательские функции: ex5() и ex6(). Причем функция ex5() вызывается из функции ex6().

Мы создаем простую форму, состоящую из поля ввода и кнопки submit. Как только пользователь вводит в поле для ввода число и нажимает на кнопку - управление передается в функцию ex6(), при помощи обработчика OnClick. Внутри функции ex6() находится одна единственная строка кода:

document.f0.f1.value=ex5();

которая означает, что в качестве значения поля ввода нашей формы будет подставлен результат работы функции ex5(). В момент упоминания функции ex5() - начинается ее обработка. Данная функция извлекает число, введенное пользователем в поле ввода и увеличивает его на 10.

Как только число было увеличено, оно возвращается при помощи оператора возврата - Javascript Return(). Т.к. функция, увеличивающая число была вызвана изнутри функции ex6() - подстановка будет совершена в строке:


document.f0.f1.value=ex5();

в месте непосредственного вызова функции и таким образом результат работы функции ex5() станет новым значением для поля ввода.

Также стоит заметить, что строка return false; используется во избежание перезагрузки страницы.

Добавил: Админ-21NN | Просмотров: 4211 | Комментарии: 2 | Рейтинг: 5.0/2


Обратите Ваше внимание на другие статьи:

Уважаемые пользователи, пожалуйста, оставляйте комментарии! Нам очень важно Ваше мнение!
Всего комментариев: 2
09.03.2013 Спам
Уважаемые!
Нельзя объяснить что-либо посредством неизвестных понятий!
Вы пытаетесь объяснить работу оператора выборки FOR ... IN при помощи еще непонятных:
for (v in window.document) - что означает этот синтаксис? что такое v?
что означает синтаксис [b]document.write(v+"<BR>")[/b]? что такое <BR>?
когда ставят символы ('), а когда ("), когда (<>)?
Нельзя писать сочинение, не зная АЗБУКИ!


Добавлять комментарии могут только зарегистрированные пользователи.

    
Меню пользователя
Аватар гостя

Приветствуем Вас, Гость

Логин:
Пароль:
Поиск по сайту
Поиск по названию
Поиск по тегам
Горячие темы форума
Стол заказов
поговорим о софте
Зарабатываем деньги
Детская игра Подарки...
Тест скорости подклю...
кое что о Windows
Кто ты, человек?
Новая валюта портала
Все о сексе
"Что мешает нам...
Культура
Афоризмы
Лучшие 13 анекдотов ...
как защитить свой ко...
восстановление данны...
Я ненавижу Дом-2
Волга-Телеком
Кулинария "Кокт...
Жалобы
С Днем Победы!!!
Прикольные картинки
С праздником Пасхи !...
Статистика
Новых за месяц: 130
Новых за неделю: 41
Новых вчера: 6
Новых сегодня: 3
Всего: 5499
Из них:
Администраторов: 6
$$$-Модераторов: 2
Модераторов: 5
Прокураторов: 5
-----------------
далее:
Проверенных: 260
Пользователей: 3034
Новичков: 1884
Заблокированных: 110
-----------------
Из всех пользователей:
Мужчин и парней: 4322
Женщин и девушек: 1176
Именинники
Поздравляем с Днем рожденья:

BuRGeN(33), 3ymmer(55), evgen007350(33), lexxusas(47), COMLEF(45), aleksa(23), quibus(24), ивваныч(48), hfrbltvjyekzk(61), wadim91(28), ZYX-FM(38)
Режим ON-LINE
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Сейчас на портале:
Наша кнопочка
Нижегородский файловый портал

HTML-код кнопки:
Реклама
Размещение рекламы

Яндекс.Метрика
Регистрация сайта в каталогах, раскрутка и оптимизация сайта, контекстная реклама Ремонт холодильников в Нижнем Новгороде

Copyright © BankRemStroy © 2009-2019
x