Его синтаксис напоминает оператор if: условие в круглых скобках, код — в А сейчас, допустим, нам захотелось вывести таблицу умножения — вот такую: Как мы помним из HTML, таблицы надстраиваются горизонтальными. Все эти свойства обычно отрисовываются в виде HTML таблицы, это очень удобно мы решим такую простую задачу, как создание таблицы умножения : Этот код можно было бы назвать идеальным шаблоном. Символ, html - код, десятичный код, описание.   ⊗, ⊗, знак умножения в кружке. ⊥, ⊥, ⊥. Таблица символов Юникода. Таблица умножения Выведи на экран таблицу умножения 10 на 10 в Java( TM) 2 Platform Standard Edition 5.0Выделить код.
Операторы цикла: for, for. in. арифметическая прогрессия (сумма); арифметическая прогрессия (числа по порядку); таблица умножения; for. in: извлечение свойств из объекта. Хотя JavaScript не универсален и не всемогущ, не велик и не ужасен, это всё же язык программирования, и он позволяет выполнять сложные математические вычисления. Иногда возникают ситуации, когда требуется многократно выполнить программный код, пока не выполнится определённое условие.
Допустим, сдать карты в пасьянсе (очень хитроумная задача). Или сложить подряд числа от 1 до 15 (простейший вариант). Для этих целей существуют операторы, которые позволяют выполнять циклы — повторяющиеся действия. Его синтаксис напоминает оператор if.
условие в круглых скобках, код — в фигурных. Но условие более сложное:. Начало: здесь задаётся начальное условие, при котором оператор включается.
Область действия: границы, в которых выполняется код. Шаг: способ продвижения цикла от начального к конечному условию. Арифметическая прогрессия. Предположим, нам надо узнать и записать на странице сумму всех чисел подряд от 1 до 10. Объявляем переменную счётчика i и переменную, собирающую знчения — x.
Назначим ей нулевое значение. Все значения должны куда-то складываться, а неназначенная переменная — это Null («посмотришь на его место, и нет его»). Начальное значение счётчика — 1. Граница — до 10 включительно, то есть меньше или равно 10.
Шаг — 1 (каждое следующее целое число). Привыкайте к специальным обозначениям. Если не помните, что такое ++ или +=, зайдите в прошлый урок и посмотрите табличку. В коде x += i каждое новое значение счётчика приплюсовывается к переменной x. Затем выходим из цикла и публикуем на странице итоговое значение. А теперь чуть поинтереснее. Вытащим на страницу все промежуточные значения счётчика.
Для этого поместим document. write не выходя из цикла (то есть внутри фигурных скобок). А чтобы числа не печатались сплошной нераздельной строкой, добавим в него разделитель:. А как сделать, чтобы вся строка заканчивалась, скажем, точкой.
Для этого скомбинируем этот оператор с уже известным нам оператором if. else. То есть при последнем значении i (10) у нас должна выпасть точка, при остальных — точка с запятой и пробел:. Кстати, вот оно, реальное различие методов write и writeln. Вместо пробела здесь можно применить метод writeln. Если мы запишем. то пробел делать не обязательно, его поставит сам метод.
Поскольку конечное значение счётчика — уже существующее условие, а не назначаемая величина, ставим сдвоенное равенство. И не запутайтесь в фигурных скобках.
Таблица умножения. А сейчас, допустим, нам захотелось вывести таблицу умножения — вот такую:. Да чтобы руками эту таблицу не форматировать и опечаток не наделать. Давайте найдём алгоритм для составления такой таблицы. Как мы помним из HTML, таблицы надстраиваются горизонтальными рядами <tr>.
которые, в свою очередь, делятся на ячейки <td>. Рассмотрим содержимое первого горизонтального ряда.
Первый множитель увеличивается на единицу. Второй остаётся без изменений. А в вертикальных столбцах — наоборот. Первый стоит на месте, а второй приращивается. Рядов <tr> в нашей таблице девять (от 2 до 10), а колонок в каждом из них по 8 (от 2 до 9). Попробуем сначала сформировать все <tr> через счётчик i.
Почему от 2 до 10, а не от 1 до 9. Догадайтесь с трёх раз.
Ну конечно, мы их потом будем использовать и для значений содержимого таблицы, а оно начинается с 2х2. Наш первый <tr> должен выглядеть вот так ( × — это спецсимвол HTML для отображения «школьного» знака умножения):. То есть внутри него ещё один цикл — из </td>. Эти циклы можно вкладывать, как и операции с if. else.
Вложим. Для второго цикла определим счётчик j. Обратили внимание? Если i <= 10.
то j < 10 (без равенства), так как горизонтальных ячеек на одну меньше. Пустая таблица свёрстана, осталось заполнить её содержимым. Первый множитель приращивается в каждом </td>. значит, он соответствует значению j.
А второй, возрастающий в каждом </tr>. — значению i :. j + "×" + i + "=" + (i*j). Подставим это в наш код:. Таблица умножения готова.
Таким же способом можно сделать, например, таблицу символов Unicode. Полезная штука. Подобные алгоритмы используются в скриптах меню или календарей. Оператор for. in. Оператор for.
in используется для анализа всех свойств объекта. В результате выполнения производится перебор свойств объекта.
Переменная цикла при каждом повторении содержит значение очередного свойства. Количество повторений тела цикла равно числу свойств, определенных для объекта. переменная — переменная счётчика, как и для цикла for.
объект — любой объект JavaScript, который мы хотим «выпотрошить». инструкции — код для тех действий, которые мы хотим произвести с объектом.
Итерация элементов массива. Что такое массивы, мы лучше узнаем через несколько уроков.
а еще подробнее — во второй части наших занятий. Если объяснять «на пальцах», то это собрание в одном «флаконе» (объекте) маленьких «объектиков», которые мы с помощью различных кодов можем доставать из объекта-контейнера, как фокусник из цилиндра.
Массивами являются некоторые встроенные коллекции документа: например, все картинки на странице — document. images. или же все ссылки — document.
links. Каждая ссылка — это отдельное свойство «большого объекта» — коллекции links. Размер всей коллекции (общее количество ссылок) тоже является её свойством. Давайте с помощью for. in пересчитаем все ссылки на данной странице. Вообще, так сказать, «потенциальных» свойств в каждом объекте заложено очень много. И в разных браузерах эти дополнительные наборы могут отличаться.
Как правило, эти «второразрядные» свойства объект не использует, и их значения являются пустой строкой или величиной null (то есть «ничто»). Но наш цикл будет добросовестно нанизывать эти километры ненужных свойств. Чтобы этого не было, мы поставим в нашей функции маленькую «заглушку» и выведем только реально существующие свойства. Переменная msg «нанизывает» на себя все значения свойств (если они есть) с переводом каретки ( <br> ), чтобы они располагались одно под другим.
Чтобы вывести их на страницу, нужно теперь вызвать функцию:. Так вот, оказывается, сколько тут ссылок. Это не все ссылки на странице. Последняя, 84-я находится несколькими абзацами выше этого списка.
Дело в том, что скрипт исследует данные от начала страницы до того места, где он находится. И все последующие ссылки оказываются за пределами его внимания (подробнее см.
чуть ниже). В IE отображаются только адреса и порядковые номера ссылок, а также общее их количество. Обратите внимание: общее количество на единицу больше последнего порядкового номера, потому что нумерация с нуля. Браузеры Mozilla и Firefox выдают ещё имена функций, которые использовались в скрипте для всплывающих меню, тем самым участвуя в образовании ссылок:. Links[item] = function item(). Links[namedItem] = function namedItem(). Полезное применение.
Например, мы делаем страницу с множеством ссылок на другие страницы. Но эти другие страницы ещё не готовы. Допустим, чтобы не было неприятных «битых ссылок», мы поставили на несуществующие страницы <a href="#">текст ссылки</a>. Но если такая ссылка находится в самом низу длинной страницы, то при нажатии на неё документ будет перемещаться в начальную позицию, что тоже раздражает. Вообще-то можно этого избежать, поставив не <a href="#">. а <a href="#null">. Тогда давайте в самом конце кода страницы.
перед тэгом </body>. поставим скрипт, проверяющий атрибуты href всех наших ссылок:.