JavaScript. Подробное руководство, 6-е издание, стр. 9

• Поиск элементов в документе.

• Получение ввода пользователя с помощью элементов форм.

• Изменение содержимого элементов документа.

• Сохранение данных в броузере.

• Управление НТТР-запросами.

• Создание графики с помощью элемента <canvas>.

Пример 1.1. Калькулятор вычисления платежей по ссуде на JavaScript

<b>&lt;!DOCTYPE html&gt;</b>

<b>&lt;html&gt;</b>

<b>&lt;head&gt;</b>

<b>  &lt;title&gt;JavaScript Loan Calculator&lt;/title&gt;</b>

<b>  &lt;style&gt; /* Таблица стилей CSS: определяет внешний вид вывода программы */</b>

<b>    .output { font-weight: bold; } /* Жирный шрифт для вычисленных значений */</b>

<b>    #payment { text-decoration: underline: } /* Для элементов с id=&quot;payment&quot; */</b>

<b>    #graph { border: solid black 1px; } /* Простая рамка для диаграммы */</b>

<b>    th, td { vertical-align: top: } /* Выравнивание в ячейках таблицы */</b>

<b>  &lt;/style&gt;</b>

<b>&lt;/head&gt;</b>

<b>&lt;body&gt;</b>

<b>&lt;! --</b>

<b>Это HTML-таблица с элементами &lt;input&gt;, позволяющими вводить данные, и с элементами &lt;span&gt;,</b>

<b> в которых отображаются результаты вычислений. Эти элементы имеют идентификаторы, </b>

<b>такие как &quot;interest&quot; и &quot;years&quot;. Данные идентификаторы используются в JavaScript-коде, </b>

<b>который следует за определением таблицы. Обратите внимание, что для некоторых</b>

<b>элементов ввода определены обработчики событий &quot;onchange&quot; и &quot;onclick&quot;. </b>

<b>В них заданы строки JavaScript-кода, выполняемого при вводе данных или щелчке на кнопке. </b>

<b>--&gt;</b>

<b>&lt;table&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;th&gt;Enter Loan Data:&lt;/th&gt;</b>

<b>    &lt;td&gt;&lt;/td&gt;</b>

<b>    &lt;th&gt;Loan Balance, Cumulative Equity, and Interest Payments&lt;/th&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Amount of the loan ($):&lt;/td&gt; </b>

<b>    &lt;td&gt;&lt;input id=&quot;amount&quot; onchange=”calculate(); &quot;&gt;&lt;/td&gt;</b>

<b>    &lt;td rowspan=8&gt;</b>

<b>      &lt;canvas id=&quot;graph&quot; width=&quot;400&quot; height=&quot;250&quot;&gt;&lt;/canvas&gt;</b>

<b>    &lt;/td&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Annual interest (%):&lt;/td&gt;</b>

<b>    &lt;td&gt;&lt;input id=&quot;apr&quot; onchange=&quot;calculate(); &quot;&gt;&lt;/td&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Repayment period (years):&lt;/td&gt;</b>

<b>    &lt;td&gt;&lt;input id=&quot;years&quot; onchange=&quot;calculate(); &quot;&gt;&lt;/td&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Zipcode (to find lenders):&lt;/td&gt;</b>

<b>    &lt;td&gt;&lt;input id=&quot;zipcode&quot; onchange=&quot;calculate(); &quot;&gt;</b>
<b>&lt;/td&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;th&gt;Approximate Payments:&lt;/th&gt;</b>

<b>    &lt;td&gt;&lt;button onclick=&quot;calculate();&quot;&gt;Calculate&lt;/button&gt;&lt;/td&gt;</b>

<b>  &lt;/tr&gt; </b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Monthly payment:&lt;/td&gt;</b>

<b>    &lt;td&gt;$&lt;span class=&quot;output&quot; id=&quot;payment&quot;&gt;&lt;/span&gt;&lt;/td&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Total payment:c/td&gt;</b>

<b>    &lt;td&gt;$&lt;span class=&quot;output&quot; id=&quot;total&quot;&gt;&lt;/span&gt;&lt;/td&gt;</b>

<b>  &lt;/tr&gt;</b>

<b>  &lt;tr&gt;</b>

<b>    &lt;td&gt;Total interest:c/td&gt;</b>

<b>    &lt;td&gt;$&lt;span class=&quot;output&quot; id=&quot;totalinterest&quot;&gt;&lt;/span&gt;&lt;/td&gt;</b>