• nl
  • en
Due to Corona all our trainings will proceed until june 1st as 'Virtual Classroom'.

Course Advanced JavaScript Programming

Course Advanced JavaScript Programming
  • Modules
  • Course
  • Content
  • General information
  • Reviews
  • Certificate
  • Module 1 : Scope and Context

    Module 2 : ECMAScript 6 and 7

    Module 3 : Classes and Objects

    Scope in JavaScript
    var Keyword
    Scope in Nested Function
    Lexical Scope
    Nested Anonymous Function
    let Keyword
    const Keyword
    Refresher on this
    this in Global Scope
    Lexical this
    Binding this
    apply and call Function
    bind Function
    ECMAScript 6
    Arrow Functions
    Object Literal Syntax
    Rest Parameters
    Spread Operator
    Template Strings
    Iteration with for..of
    Destructuring Assignments
    Built-in Symbols
    ECMAScript 7
    Exponentiation Operator
    Shared Array Buffer
    Object Oriented Programming
    Objects in JavaScript
    Constructor Functions
    Object Ancestor
    _proto_ Property
    Prototype Chains
    Prototype Keyword
    Composing Prototypes
    ES2015 Classes
    Static Keyword
    Static Methods
    Overriding Methods
    super Keyword

    Module 4 : Advanced Functions

    Module 5 : Advanced Arrays

    Module 6 : XML and JSON Access

    Function Declarations
    Function Expressions
    Default Parameters
    Variable Arguments
    Argument Object
    Array Conversion
    Immediate Invocation and IIFE’s
    Runtime Errors
    Globally Handled Errors
    Structured Error Handling
    Try and Catch
    Arrays Review
    Arrow Functions
    Document Object Model (DOM)
    Properties and Methods
    DOM Navigation
    DOM Manipulation
    DOM Node Types
    Querying the DOM
    What is JSON?
    JSON Data Structures
    JSON Object Representation
    JSON Array
    JSON with Array and Objects
    JSON Conversion
    JSON Parser
    JSON Object Creation

    Module 7 : Ajax and Promises

    Module 8 : Components and Modules

    Module 9 : Regular Expressions

    Ajax Asynchronous Model
    Creating XMLHttpRequest
    Sending Requests
    XMLHttpRequest Properties
    Processing the Response
    Accessing Remote Sites
    Same Origin Policy
    Cross Site Request Sharing
    JSON with Padding
    Promises Guarantees
    Promise Chains
    Chaining after Catch
    ES7 Async Await
    Web Component Specifications
    Custom Elements
    Creating and Extending
    HTML Templates
    Activating Templates
    Shadow DOM
    Shady DOM
    Module Systems
    CommonJS Module System
    Asynchronous Module Definition
    Internal Modules
    External Modules
    Imports and Exports
    JavaScript's RegExp
    String Methods
    Regular Expression Syntax
    Start and End ( ^ $ )
    Number of Occurrences
    Grouping ( [] )
    Negation ( ^ )
    Subpatterns ( () )
    Alternatives ( | )
    Escape Character ( )
    Named Backreferences
    Form Validation
    Cleaning Up Form Entries
  • Audience Advanced JavaScript Programming Course

    Course Advanced JavaScript ProgrammingThe course Advanced JavaScript Programming is designed for experienced Web developers who want to use advanced aspects of JavaScript in Web Applications.

    Prerequisites Course Advanced JavaScript Programming

    Basic knowledge of JavaScript and HTML is required. Prior knowledge of Object Oriented Programming is beneficial for a good understanding.

    Realization Training Advanced JavaScript Programming

    The course has a hands-on nature. The theory is treated by means of presentation slides and is interspersed with practical exercises. Demos are used to clarify the concepts. The course times are from 9.30 up and to 16.30.

    Certification Advanced JavaScript Programming

    Participants receive an official certificate Advanced JavaScript Programming after completion of the course.

  • Course Advanced JavaScript Programming

    The course Advanced JavaScript Programming starts with a treatment of scope in JavaScript, where the difference between var, let and const variable declarations and the term hoisting are discussed. The meaning and workings of the context dependent this keyword is also discussed here. Subsequently, attention is paid to the many new features that have made their appearance with the ECMAScript 2015 (ES6) standard, such as arrow or lambda functions, rest operators, spread operators and destructuring assignments. The changes with the ECMAScript 2016 (ES7) standard are dealt with subsequently. Then there is attention for Object Oriented programming in JavaScript that is still based on prototypes, but since ES6 is programmed with classes and objects. The JavaScript object orientation is therefore more in line with what is common in other languages. Subsequently, a number of advanced aspects of functions such as function objects, immediate invocation, callbacks, closures and recursion are discussed and attention is paid to advanced functional operations on arrays such as filter, map and reduce. After a systematic discussion of how XML and JSON data can be accessed in JavaScript, asynchronous Ajax calls with the XMLHttpRequest Object and its request processing with Promises are treated. Subsequently attention is paid to the new Web Component specifications, such as shadow and shady DOM, HTML templates and HTML Imports. Also Module Systems such as CommonJS and AMD are subjects on the course program. The last subject in the course is the use of Regular Expressions in JavaScript for a.o. input validation.

  • Course Forms

    All our courses are classroom courses in which the students are guided through the material on the basis of an experienced trainer with in-depth material knowledge. Theory is always interspersed with exercises.


    We also do custom classes and then adjust the course content to your wishes. On request we will also discuss your practical cases.

    Course times

    The course times are from 9.30 to 16.30. But we are flexible in this. Sometimes people have to bring children to the daycare and other times are more convenient for them. In good consultation we can then agree on different course times.


    We take care of the computers on which the course can be held. The software required for the course has already been installed on these computers. You do not have to bring a laptop to participate in the course. If you prefer to work on your own laptop, you can take it with you if you wish. The required software is then installed at the start of the course.


    Our courses are generally given with Open Source software such as Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda and Netbeans. You will receive the digital course material to take home after the course.


    The course includes lunch that we use in a restaurant within walking distance of the course room.


    The courses are planned at various places in the country. A course takes place at a location if at least 3 people register for that location. If there are registrations for different locations, the course will take place at our main location, Houten which is just below Utrecht. A course at our main location also takes place with 2 registrations and regularly with 1 registration. And we also do courses at the customer’s location if they appreciate that.