Learning JavaScript
Beginner friendly course for learning JavaScript step-by-step, one of the most versatile scripting languages for web development.
(JAVASCRIPT.AE1) / ISBN : 978-1-64459-473-5About This Course
Learning JavaScript online is now easy with our course that teaches you the fundamentals for creating interactive websites and dynamic web applications. Gain knowledge of JavaScript core concepts - syntax, data types, variables, operators, and control flow statements. Learn about the use and application of DOM (Document Object Model) for experimenting with web page content, styles, and attributes. Understand the nature of JavaScript programming through objects, properties, methods, constructors & prototypes, and asynchronous programming (non-blocking code execution). Discover modern JavaScript features like arrow functions, template literals, destructuring, classes, modules, and more. By the end of this JavaScript learning path, you’ll gain the essential knowledge to build stunning user-friendly website interfaces.
Skills You’ll Get
- Writing HTML, JavaScript Programs
- Running codes & commands in the Console
- Create, modify & delete Array Elements
- Work with class, abstraction, inheritance & polymorphism
- Understanding API web interfaces & navigation
- Using Linter for unit-testing & debugging in chrome
- Event handling for responding to user interactions
- Build framework for React and Vue components
- Build Node. js modules
Interactive Lessons
43+ Interactive Lessons | 89+ Exercises | 257+ Quizzes | 265+ Flashcards | 265+ Glossary of terms
Hands-On Labs
76+ LiveLab | 76+ Video tutorials | 02:44+ Hours
Introduction
- Why This Course?
- Conventions Used in This Course
- Foolish Assumptions
- Icons Used in This course
- Beyond the Course
- Where to Go from Here
Jumping into JavaScript
- JavaScript, the Basics
- Reading and Copying JavaScript Code
- Starting Your Development Environment
- Writing Your First JavaScript Program
- Running Code in the Console
- Rerunning Commands in the Console
- Running Code in a Browser Window
Filling Your JavaScript Toolbox
- Installing Node.js
- Configuring Visual Studio Code
- Documenting Your Code
- Coding Responsibly with Git
Using Data
- Making Variables with let
- Making Constants with const
- Taking a Look at the Data Types
- Wrangling the Object: The Complex Data Type
- Examining the Array — a Special Kind of Object
- Getting a Handle on Scope
Working with Operators and Expressions
- Building Expressions
- Operators: The Lineup
- Other Operators
Controlling Flow
- Choosing a Path
- Making Loops
Using Arrays
- Introducing Arrays
- Creating Arrays
- Accessing Array Elements
- Modifying Arrays
- Deleting Array Elements
- Programming with Array Methods
- Looping with Array Methods
- Destructuring Arrays
- Spreading Arrays
Making and Using Objects
- Objects: The Basics
- Creating Objects
- Modifying Objects
- Comparing and Copying Objects
- Understanding Prototypes
- Deleting Object Properties
Writing and Running Functions
- Functions: An Introduction
- Writing Functions
- Writing Methods
- Understanding Context and this
- Chaining Functions
Getting Oriented with Classes
- Encapsulation
- Abstraction
- Inheritance
- Polymorphism
- Base Classes
- Derived Classes
- Constructors
- Properties and Methods
- Practicing and Becoming comfortable with Classes
Making Things Happen with Events
- Understanding the JavaScript Runtime Model
- The Event Loop
- Listening for Events
Writing Asynchronous JavaScript
- Understanding Asynchronous JavaScript
- Making Promises
- Using AJAX
Using JavaScript Modules
- Defining Modules
- Exporting Modules
- Importing Modules
- Renaming Exports and Imports
- Importing a Module Object
- Loading Dynamic Modules
- Importing Modules into HTML
What a Web Browser Does
- Interfacing with a Browser
- Introducing the Browser Engine
- The Rendering Engine
- Networking
Programming the Browser
- Understanding Web APIs and Interfaces
- Getting Around the Navigator
- Stealing a Glimpse Through the Window
- Introducing the HTML DOM
- Knowing Your History
Getting Started with React
- Understanding ReactJS
- Initializing a Project with Vite
- Introducing ReactDOM and the Virtual DOM
Writing JSX
- Learning the Fundamentals of JSX
- Using JavaScript Expressions in JSX
- Conditionally Rendering JSX
- Making a List
- Styling React Apps and Components
Building React Components
- Thinking in Components
- Recognizing the Two Types of Data
- Function Components
- Class Components
- The Component Lifecycle
- Using the Lifecycle in Function Components
- Composing Components
Using Data and Events in React
- Event Handling in React
- Making Forms with React
Getting an Overview of Vue
- Comparing Vue to React
- Scaffolding Your First Vue.js Application
- Mounting a Root Component
- Exploring Vue's Two Styles
- Installing Vue DevTools
Introducing Vue Components
- Introducing the Single-File Component
- Naming Components
- Following the Component Lifecycle
- Handling Errors in Components
Making Vue Templates
- Writing HTML Templates
- Using JavaScript in Templates
- Introducing Directives
- Conditional Rendering
- Rendering Lists
- Composing with Slots
- Adding Style to Components
Using Data and Reactivity
- Passing and Using Props
- Binding Data to Templates
- Initializing and Changing Reactive Data
- Introducing ref()
- Computing Properties
- Reacting to State Changes with Watch()
Responding to Events
- Setting Listeners with v-on
- Using Event Modifiers
- Binding Forms to Events and Data
Getting Started with Svelte
- What Makes Svelte Different?
- Building Your Scaffolding
- Getting the Svelte for VS Code Extension
- Exploring a Svelte App
- Playing with Svelte
Building with Components
- Writing Lean Components
- Identifying What's in a Component
- Adding Style to a Component
Designing Templates
- Elements Are the Building Blocks
- Documenting Svelte with Comments
- Choosing a Path
- Creating Loops
- Writing Text Expressions
- Composing with Slots
Using Directives
- Listening for Events with on:
- Creating Two-Way Bindings with :bind
- Using Transition Animations
Using the Component Lifecycle
- The Svelte Lifecycle
- Fetching Data in Svelte
Advanced Svelte Reactivity
- Constructing and Stocking the Store
- Getting and Setting Context
Building from Scratch
- Why You Need a Build Tool
- Managing Dependencies with npm
- Writing Your First Files
- Writing a dev Script
- Making Modules
Optimizing and Bundling
- Automating Your Build Script
- Converting to React
Testing Your JavaScript
- Using a Linter
- Debugging in Chrome
- Unit Testing
Node.js Fundamentals
- Learning What Makes Node.js Tick
- Learning the Parts of Node.js
- Introducing the Node.js Core Modules
- Recognizing What Node.js Is Good For
- Working with Node.js
- Using REPL
- Making and Using Node.js Modules
- Getting Data to Node Modules
- Node's Callback Pattern
Streaming
- Jumping into Streams
- Creating Readable Streams
- Creating Writable Streams
- Producing Duplex Streams
- Transforming Streams
- Chaining Streams
Working with Buffers
- Knowing Your Buffer Basics
- Decoding Buffers
- Creating Buffers
- Using Other Buffer Methods
- Iterating over Buffers
Accessing the File System
- Importing the fs module
- Reading Files
- Writing Files
- Using Paths
- Getting File and Directory Information
Networking with Node
- A Note about Security
- Making a Web Server
Using Events
- Introducing EventEmitter
- Understanding and Using maxListeners
- Removing Listeners
- Emitting Once
Error Handling and Debugging
- Knowing the Types of Errors
- Understanding Node.js's Error Object
- Exceptions versus Errors
- Handling Exceptions
- Debugging Node.js Programs
Accessing Databases
- Getting Started with MongoDB
- Starting MongoDB
- Using Mongosh
- Using MongoDB from Node.js
Riding on the Express Train
- Installing Express
- Server-Side Routing with Express
- Using Express Middleware
- Analyzing a Complete Express Server
- Serving a View
- Using the Express Application Generator
Registration and Authentication
- Making and Configuring the Directory
- Adding the App and Server Modules
- Making Some Basic Routes
- Testing Your Routes
- Making a Schema with Mongoose
- Implementing User Registration
- Handling Authentication
- Generating and Using Tokens
- Finishing the Login Route
Jumping into JavaScript
- Creating an HTML Page Using JavaScript
Using Data
- Using Primitive Data Types
- Using Special Characters
Working with Operators and Expressions
- Using Comparison Operators
- Using Arithmetic Operators
- Using Logical Operators
Controlling Flow
- Using Conditional Statements
- Using the Ternary Operator
- Using the switch Statement
- Using the break Statement
- Using Loops
- Using the continue Statement
Using Arrays
- Generating an HTML List from an Array
- Creating a Shallow Copy of an Array
Making and Using Objects
- Printing the Properties of an Object
Writing and Running Functions
- Using Pass By Reference
- Creating a Movie Picker App
- Creating a Bookstore App
Getting Oriented with Classes
- Overriding a Method
- Accessing the static Member of a Class
Making Things Happen with Events
- Setting an Event Listener
- Using Event Bubbling
- Firing a Built-in Event
Writing Asynchronous JavaScript
- Creating an Asynchronous User Interface
- Creating a Synchronous User Interface
- Creating an Asynchronous Function
- Creating a Promise Chain
- Creating a Promise
Programming the Browser
- Using the Navigator userAgent Property
- Using the getElementById() Method
- Using the querySelectorAll() Method
- Creating and Appending Element Nodes
Writing JSX
- Creating a React Component
- Performing Conditional Rendering Using the Logical && Operator
- Performing Conditional Rendering Using the Conditional Operator
- Performing Conditional Rendering Using the Element Variable
Building React Components
- Using State
- Using props in a Class Component
- Using Props in a Function Component
- Creating a Class Component
Using Data and Events in React
- Handling an Event in React
- Creating a Form in React
Getting an Overview of Vue
- Creating a Vue Component Using the Composition API
- Creating a Vue Component Using the Options API
Introducing Vue Components
- Using the setup Attribute
Making Vue Templates
- Creating a Custom Directive
Using Data and Reactivity
- Using Props in Vue
Responding to Events
- Handling Events in Vue
Getting Started with Svelte
- Creating a Svelte Component
Building with Components
- Creating a Svelte Counter Component
- Creating a Prop in Svelte
- Using Reactive Statements in Svelte
Designing Templates
- Performing Conditional Rendering in Svelte
- Creating a Loop in Svelte
Using Directives
- Creating Transition in Svelte
Using the Component Lifecycle
- Using the tick() Method
Advanced Svelte Reactivity
- Creating a Store in Svelte
Building from Scratch
Optimizing and Bundling
Testing Your JavaScript
Node.js Fundamentals
- Using the os Module
- Creating a Web Server in Node.js
- Creating ES Modules
- Creating CommonJS Modules
Streaming
- Working with a Stream in the Paused Mode
- Working with a Stream in the Flowing Mode
- Creating a Streaming Counter
Working with Buffers
- Creating a Buffer
- Iterating over a Buffer
Accessing the File System
- Reading Data from a File
- Writing Data to a File
Networking with Node
- Creating a Web Server that Returns Information about Each Server Request
Using Events
- Creating an Instance of EventEmitter
- Finding the Default Number of Listeners for an Emitter
Error Handling and Debugging
- Creating an Error Object and Displaying its Properties
- Handling an Exception
Accessing Databases
- Creating a Collection in MongoDB
Riding on the Express Train
- Creating an Express Application
- Handling Route Parameters in Express
Registration and Authentication
Any questions?Check out the FAQs
Still have unanswered questions and need to get in touch?
Contact Us NowThere are no such prerequisites as this is a beginner friendly course. However some basic knowledge of HTML and CSS coding will help you in understanding the basics of programming.
Anyone wanting to upgrade their coding skills or those wanting to become web developers or enhance their front-end development skills will benefit from this course.
If you aspire to become a professional web developer, learning these high-demand languages is the first thing you should do. There’s a constant demand for skilled developers worldwide and with the right skillset you can choose to work as a front-end, full-stack or even freelance developer.
uCertify offers a variety of beginner-friendly online programming courses. It is the best training platform for learning JavaScript step-by-step, complete with video tutorials, practice assessments, flashcards, quizzes, and hands-on Labs for practicing your learnings.
As a professional JavaScript web developer, you can earn anywhere between $70,000 to $120,000 annually.