Дэвид Флэнаган - JavaScript. Подробное руководство, 6-е издание

Здесь есть возможность читать онлайн «Дэвид Флэнаган - JavaScript. Подробное руководство, 6-е издание» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: СПб, Год выпуска: 2012, ISBN: 2012, Издательство: Символ-Плюс, Жанр: Базы данных, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

JavaScript. Подробное руководство, 6-е издание: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «JavaScript. Подробное руководство, 6-е издание»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

C момента выхода первого издания в 1996 году книга "JavaScript: Подробное руководство" превратилась в библию программистов на JavaScript. За эти годы было издано более 500000 экземпляров, и веб-разработчики по-прежнему с восторгом отзываются о ней.
Эта книга - одновременно и руководство программиста, и полноценный справочник по базовому языку JavaScript и клиентским прикладным интерфейсам, предоставляемым веб-броузерами.

JavaScript. Подробное руководство, 6-е издание — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «JavaScript. Подробное руководство, 6-е издание», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

// Данный пример не включает фактическую реализацию такого сценария поиска кредитных

// учреждений. Но если такой сценарий уже имеется, данная функция могла бы работать с ним.

function getLenders(amount, apr, years, zipcode) {

// Если броузер не поддерживает объект XMLHttpRequest, не делать ничего

if (!window.XMLHttpRequest) return;

// Отыскать элемент для отображения списка кредитных учреждений

var ad = document.getElementById("lenders”);

if (!ad) return; // Выйти, если элемент отсутствует

// Преобразовать ввод пользователя в параметры запроса в строке URL

var url = "getLenders.php" + // Адрес URL службы плюс

"?amt=" + encodeURIComponent(amount) + // данные пользователя

"&apr=" + encodeURIComponent(apr) + //в строке запроса

"&yrs=" + encodeURIComponent(years) +

"&zip=" + encodeURIComponent(zipcode);

// Получить содержимое по заданному адресу URL с помощью XMLHttpRequest

var req = new XMLHttpRequest(); // Создать новый запрос

req.open("GET", url); // Указать тип запроса HTTP GET для url

req.send(null); // Отправить запрос без тела

// Перед возвратом зарегистрировать обработчик события, который будет вызываться

// при получении HTTP-ответа от сервера. Такой прием асинхронного программирования

// является довольно обычным в клиентском JavaScript,

req.onreadystatechange = function() {

if (req.readyState == 4 && req.status == 200) {

// Если мы попали сюда, следовательно, был получен корректный НТТР-ответ

var response = req.responseText; // HTTP-ответ в виде строки

var lenders = JSON.parse(response); // Преобразовать в JS-массив

// Преобразовать массив объектов lender в HTML-строку

var list = "";

for(var і = 0; і < lenders.length; i++) {

list += "

  • "+

    lenders[i].name + "";

    }

    // Отобразить полученную HTML-строку в элементе,

    // ссылка на который была получена выше.

    ad.innerHTML = "

      " + list + "
    ";

    }

    }

    }

    // График помесячного изменения остатка по кредиту, а также графики сумм,

    // выплачиваемых в погашение кредита и по процентам в HTML-элементе

    .

    // Если вызывается без аргументов, просто очищает ранее нарисованные графики,

    function chart(principal, interest, monthly, payments) {

    var graph = document.getElementById("graph"); // Ссылка на тег



    graph.width = graph.width; // Магия очистки элемента canvas

    // Если функция вызвана без аргументов или броузер не поддерживает

    // элемент

    , то просто вернуть управление,

    if (arguments.length == 0 || !graph.getContext) return;

    // Получить объект "контекста" для элемента

    ,

    // который определяет набор методов рисования

    var g = graph.getContext("2d"); // Рисование выполняется с помощью этого объекта

    var width = graph.width, height = graph.height; // Получить размер холста

    // Следующие функции преобразуют количество месячных платежей

    // и денежные суммы в пикселы

    function paymentToX(n) { return n * width/payments; }

    function amountToY(a) { return height-(a*height/(monthly*payments*1.05));}

    // Платежи - прямая линия из точки (0,0) в точку (payments,monthly*payments)

    g.moveTo(paymentToX(0), amountToY(0)); // Из нижнего левого угла

    g.lineTo(paymentToX(payments), // В правый верхний

    amountToY(monthly*payments));

    g.lineTo(paymentToX(payments), amountToY(0)); // В правый нижний

    g.closePath(); // И обратно в начало

    g.fillStyle = "#f88"; // Светло-красный

    g.fill(); // Залить треугольник

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «JavaScript. Подробное руководство, 6-е издание»

Представляем Вашему вниманию похожие книги на «JavaScript. Подробное руководство, 6-е издание» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «JavaScript. Подробное руководство, 6-е издание»

Обсуждение, отзывы о книге «JavaScript. Подробное руководство, 6-е издание» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.