0%

Book Description

This book will teach you how to take advantage of the JavaScript language to process data provided on the Internet.

Much attention is given to the main JavaScript backbone: prototype based objects, and functional capabilities, while common features (loops, etc.) are summarized in a few cheat-sheets. Only operational features are detailed through the coding of several applications -the second and largest part of the book-, on free-access datasets (e.g. World Bank). It includes: cartography (SVG or API's based), data-sheets access (via Ajax or Jsonp), video data and post-synchronization, and animation examples.

Table of Contents

  1. Cover
  2. Introduction
    1. I.1. Motivation
    2. I.2. Organization of the book
    3. I.3. The history of JavaScript
    4. I.4. To code without “var”, nor “for”, nor “new”
    5. I.5. Mechanisms and features of the script language
    6. I.6. Conclusion
  3. Part 1: Core JavaScript
    1. Introduction to Part 1
    2. 1 Variables: Declaration, Definition and Type
      1. 1.1. Declarations of functions and variables
      2. 1.2. Variable definition, initialization and typing in JavaScript
    3. 2 Controls: Booleans, Branch and Loops
      1. 2.1. Truth values and boolean operators
      2. 2.2. Conditional instructions: branch test, loop test
    4. 3 Data: Numbers and Strings
      1. 3.1. Handling numbers
      2. 3.2. Handling character strings
      3. 3.3. The String.prototype methods
    5. 4 Objects and Prototypes
      1. 4.1. Introduction
      2. 4.2. The objects: concepts versus named entities
      3. 4.3. Object literal notation in JavaScript
      4. 4.4. The built-in methods of Object and Object.prototype
      5. 4.5. Basics of the “prototypal approach” in JavaScript
      6. 4.6. Comparing “prototypal” and “classical” approaches
    6. 5 Arrays
      1. 5.1. Handling arrays: creation and access to its elements
      2. 5.2. Methods of the object Array and Array.prototype
      3. 5.3. Array of arrays (multidimensional array)
    7. 6 Functions
      1. 6.1. General syntax of a JavaScript function
      2. 6.2. Invoking a function with operator (.)
      3. 6.3. Choosing function declaration versus function expression
      4. 6.4. Arguments
      5. 6.5. Scope: global scope, function scopes and block scopes
      6. 6.6. Function “closures”
      7. 6.7. Immediately invocable functions: IIFE
      8. 6.8. The methods of Function.prototype
      9. 6.9. Built-in functions
      10. 6.10. Closure and IIFE cheat-sheet
    8. 7 From Signs to Patterns
      1. 7.1. Reserved words
      2. 7.2. The pronoun “this”
      3. 7.3. Operator: new
      4. 7.4. Punctuation signs
      5. 7.5. JavaScript usual design patterns
      6. 7.6. Metaprogramming with ES6
  4. Part 2: Client-Side JavaScript
    1. Introduction to Part 2
    2. 8 JavaScript in the Web Page
      1. 8.1. Ecosystem of the web page: the HTML sequence
      2. 8.2. Building the web page DOM: the layout engine
      3. 8.3. Dynamic behavior of the web page: the script engine
      4. 8.4. Interface with the DOM
      5. 8.5. The events in client side JavaScript
      6. 8.6. Interacting with the DOM: to link elements/events
    3. 9 Graphic and Multimedia Tools
      1. 9.1. To draw in the web page
      2. 9.2. SVG language
      3. 9.3. Handling time in graphics animation
      4. 9.4. Data persistence between client sessions
      5. 9.5. Note about “JavaScript frameworks” (jQuery, D3, etc.)
    4. 10 AJAX Technology (Asynchrony)
      1. 10.1. Architecture for client-server data exchange
      2. 10.2. Remarks about HTTP
      3. 10.3. “Promises” and asynchronous programming
      4. 10.4. The exchange format: JSON
      5. 10.5. JavaScript Object Notation with Padding
      6. 10.6. A parallel JavaScript: the “worker”
  5. Part 3: Applications
    1. Introduction to Part 3
    2. 11 Chronological Data
      1. 11.1. Accessing a JSON file via AJAX
      2. 11.2. Using open source graphic libraries
    3. 12 Relational Data
      1. 12.1. Aggregating tabulated JSON data
      2. 12.2. Joining data: multiple JSON files
      3. 12.3. Postprocessing: analysis
      4. 12.4. The role of promises
      5. 12.5. Using Google Gantt chart for a graphic visualization
    4. 13 Cartographic Data
      1. 13.1. Cartographic application: using cartographic libraries
      2. 13.2. SVG-based cartography
      3. 13.3. Getting coordinates from Wikipedia pages
    5. 14 Data Served by JSONP
      1. 14.1. Serving RSS feeds through Yahoo Query Language
      2. 14.2. Serving shared spreadsheets through Google spreadsheets
      3. 14.3. Serving images and their metadata through the Flickr API
  6. Bibliography
    1. Introduction, general reading
    2. Core JavaScript
    3. JavaScript, Web Client
    4. Additional reading
  7. Index
  8. End User License Agreement
3.15.175.101