Advanced JavaScript and Introduction to Node.js (JVS2)

Programming, JavaScript

In this course you deepen core JavaScript skills and learn modern techniques such as Web APIs, BigInt and internationalization. You will explore OOP in JavaScript: prototypes, inheritance, ES6 classes, closures, getters and setters, and prototype extensions.

Next you move to server-side JavaScript with Node.js, covering file system access, modules, npm packaging and building a basic HTTP server for GET and POST. You will learn regular expressions, client storage (cookies, localStorage) and web security, plus Babel and Webpack.

THIS TRAINING COURSE WILL HELP YOU:

  • Deepen modern Web APIs skills (WebSockets, Geolocation, BigInt)
  • Use JavaScript OOP: prototypes, ES6 classes, closures, getters/setters
  • Design modular code with import/export and manage npm dependencies
  • Use RegExp for validation and handle client storage (cookies, localStorage)
  • Build Node.js servers, use file system and apply security measures

WHO SHOULD ATTEND?

  • Developers with intermediate JavaScript aiming for advanced level
  • Frontend devs who want to add server-side Node.js skills
  • Programmers aiming for clean, modular and secure JavaScript code
  • Developers who need input validation and client-side storage skills
  • Those wanting to use tools like Babel, Webpack and npm

COURSE LOCATION AND AVAILABLE DATES



Choose whether to attend in person in our classroom or join online. You can select your preferred format during registration. Learn more about hybrid training.

Public courses are usually delivered in Czech, but this course is also available in English. We can arrange private training for your team online, at your premises or in our classrooms, and tailor the content to your needs.

For groups of around 4 or more participants, private training can already be comparable in price to booking individual places on a public course. Send us your requirements and we’ll recommend the best format and provide an exact quote.

Request training in English

Course content:

Hide details
  • Debugging
    1. Developer tools
    2. Commands for stepping through and inspecting code
  • New and advanced JS data types and features
    1. ES6+ variable declarations
    2. Template literals, numeric literal separators
    3. Nullish coalescing, optional chaining, numeric separators
    4. Extending core prototypes, polyfills
    5. Objects, spread and destructuring
    6. Iterators: Array, Map and Set
    7. Negative array indexes
    8. Functions: changing context with apply and call, bind
    9. Arrow functions
    10. Promises and async functions
    11. Top-level await and global this
    12. Cloning objects, hasOwn
    13. JavaScript versions in browsers, MDN
  • Modern browser APIs
    1. Workers
    2. Internationalization
    3. WebSockets
    4. Custom elements
    5. Clipboard
    6. Geolocation
    7. Notifications
    8. Big numbers: BigInt
  • OOP in JavaScript
    1. Prototyping – static and dynamic properties and methods
    2. Prototyping – creating inheritance
    3. Calling parent methods and passing context
    4. Closures
    5. The ES6 class statement
    6. Private and static properties and methods
    7. Getters and setters
  • Node.js
    1. Focus and advantages of using Node.js
    2. Development workflow and debugging
    3. File system and core modules
    4. Packaging systems and libraries
    5. Creating a Node.js server and handling data (POST, GET)
  • Modules
    1. Core principles of modules
    2. import, export, default export and import
    3. Modular files
    4. import.meta
  • Regular expressions
    1. What regular expressions are and their uses
    2. Syntax and creating a regular expression
    3. Literals, special characters, modifiers and quantifiers
    4. Character classes and sets
    5. Backreferences
    6. Using test, exec, replace and split
    7. Validation before submitting forms
  • Client-side data storage
    1. Cookies
    2. Local Storage
  • Security
    1. Securing cookies
    2. CSRF attacks
    3. XSS attacks
    4. Protecting application user input
    5. Theft of admin cookies
  • Building universal applications for main browsers
    1. Polyfills
    2. Using Node.js in web app development (Babel, Less, uglify, Webpack)
Prerequisites:
Requires Windows or Mac, abstract thinking, and prior HTML, CSS and beginner JavaScript knowledge or equivalent experience.
Recommended previous course:
JavaScript for Beginners (JVS1)
Recommended follow-up course:
TypeScript (TS1)
Schedule:
3 days (9:00-17:00)
Price per person:
576.00 € ( 696.96 € incl. 21% VAT)

Training and learning environment