g.fillStle="black"; //Черный цвет для текста
g.fillText("Loan Balabce", 20, 50); //Элемент легенды
//Нарисовать отметки лет на оси Х
g.textAling="center"; //Текст меток по центру
var y = amounToY(0); //Координата Y на оси X
for (var year=1;year*12 <= payments; year++) { //Для каждого года
var x=paymentToX(year*12); //Вычислить позицию метки
g.fillRect(x-0.5, y-3, 1, 3); //Нарисовать метку
if (year == 1) g.fillText("Year", x, y-5); // Подписать ось
if (year % 5 == 0 && year*12 !== payments) // Числа через каждые 5 лет
g.fillText(String(year), x, y-5);
}
//Суммы платежей у правой границы
g.textAling="right"; //Текст по правому краю
g.textBaseLine="middle"; //Центрировать по вертикали
var ticks = [monthly*payments, principal]; //Вывести две суммы
var rightEdge = paymentToX(payments); //Координата X на оси Y
for (var i = 0; i < ticks.Length; i++) { //Для каждой из 2 сумм
var y = amountToY(ticks[i]); //Определить координату Y
g.fillRect(rightEdge - 3, y - 0.5, 3, 1); //Нарисовать метку
g.fillText(String(ticks[i].toFixed(0)), //И вывести рядом сумму.
rightEdge-5, y);
}
}
</script>
</body>
</html>
I
Базовый JavaScript
Данная часть книги включает главы со 2 по 12, она описывает базовый язык JavaScript и задумана как справочник по языку JavaScript. Прочитав главы этой части один раз, вы, возможно, будете неоднократно возвращаться к ним, чтобы освежить в памяти более сложные особенности языка.
• Глава 2 «Лексическая структура»
• Глава 3 «Типы данных, значения и переменные»
• Глава 4 «Выражения и операторы»
• Глава 5 «Инструкции»
• Глава 6 «Объекты»
• Глава 7 «Массивы»
• Глава 8 «Функции»
• Глава 9 «Классы и модули»
• Глава 10 «Шаблоны и регулярные выражения»
• Глава 11 «Подмножества и расширения JavaScript»
• Глава 12 «Серверный JavaScript»
2
Лексическая структура
Лексическая структура языка программирования - это набор элементарных правил, определяющих, как пишутся программы на этом языке. Это низкоуровневый синтаксис языка; он определяет вид имен переменных, символы, используемые для обозначения комментариев, и то, как одна инструкция отделяется от другой. Эта короткая глава описывает лексическую структуру JavaScript.
2.1. Набор символов
При написании программ на JavaScript используется набор символов Юникода. Юникод является надмножеством кодировок ASCII и Latin-І и поддерживает практически все письменные языки, имеющиеся на планете. Стандарт ЕСМА-Script 3 требует, чтобы реализации JavaScript обеспечивали поддержку стандарта Юникода версии 2.1 или выше, а стандарт ECMAScript 5 требует, чтобы реализации обеспечивали поддержку стандарта Юникода версии 3 или выше. Более подробно о Юникоде и JavaScript говорится во врезке в разделе 3.2.
2.1.1. Чувствительность к регистру
JavaScript - это язык, чувствительный к регистру символов. Это значит, что ключевые слова, имена переменных и функций и любые другие идентификаторы языка должны всегда содержать одинаковые наборы прописных и строчных букв. Например, ключевое слово while должно набираться как «while», а не «While» или «WHILE». Аналогично online, Online, OnLine и ONLINE - это имена четырех разных переменных.