Docs
Guides
Articles & Blogs
Videos
About
Docs
Guides
JavaScript
JavaScript from the Start
Print
Feedback
Share
Twitter
LinkedIn
Facebook
Email
Search
Introduction to JavaScript
Fundamentals
Variables & Datatypes
Basic IF Statements
ELSE IF Statements
Logical Operators AND and OR
Conditional Operand Selectors
Difference between == and ===
Ternary Operator
Logical Short Circuiting
Switch Statements
Optional Chaining
Nullish Coalescing Operator
Arrays
Arrays with JavaScript
Manipulating & Sorting Arrays
Avoiding Duplicate Array Values
Searching in Arrays
Finding Matches in Arrays
Custom Sorts - Arrays
Typed Arrays
Objects - the Basics
JavaScript Objects
Dynamic Object Properties
Object Assign ( ) Method
New ( ) Operator
Object Create ( ) Method
THIS keyword
DELETE keyword
Keys, Values, Entries ( ) Methods
Custom Sorts - Objects
Creating Objects
Object Literals & Constructors
JSON vs Object Literals
Object Destructuring
Reflect Object Methods
Loops
For Loops
For...In Loops
While and Do...While Loops
For...Of Loops
Nested Loops with Arrays & Objects
Looping & Recursion
Closures with Loops
For Await Of Loop
Functions
Introduction to Functions
Function Parameters
Function Return Statements
Function Return Statements 2
Arrow Functions
Tips for ES6 Arrow Functions
Method Shorthand
Timers - setTimeout & setInterval
Function Currying
Immediately Invoked Function Expressions (IIFEs)
Call, Apply, and Bind Methods
Callback Functions
Callback Functions 2
Void ( ) Operator
Chaining Methods
Chained Shift ( ) and Shallow Copy
Running Functions
Memoization
Variables & DataTypes
Variable Scope
Variable Declarations - var let const
The Variable Declaration - const
Hoisting
Hoisting - var vs let
Chained Variable Declarations
Global Variables/Properties, globalThis
Strings
Working with Strings
Tagged Template Literals
Stringify ( ) - Optional Parameters
indexOf and lastIndexOf String Methods
substring and substr String Methods
charCodeAt vs codePointAt
startsWith, endsWith, and Finding Strings
Strings as Arrays
Find and Replace Strings
Find and Replace Strings 2
Trimming and Padding Strings
Trimming Methods
Padding Methods
String Concatenation
Time & Dates
Time & Dates
.now( ), and .valueOf ( )
Seconds to a Digital Clock
Truthy & Falsey values
Primitive Data Types
TypeOf Operator
Null vs Undefined
Symbols
Identifiers & IdentiferNames
Maps & Sets
NaN and isNaN Operator
Unary & Double Bang !! Casting
Type Casting, Converting & Coercsion
Pass By Reference
Deep vs Shallow Copy
Array Methods
Array ForEach Method
Array Map Method
Array Filter Method
Array Reduce Method
Array Concat Method
Array Includes Method
Array Some Method
Array Every Method
Array From Method
Array Flat Method
Array FlatMap Method
Array Find & FindIndex Methods
Chaining Array Methods & Arrow Functions
Array Join and String Split
Array Slice and Splice Methods
Maths
Globals and Numbers and Maths
Bitwise Operators & Binary Numbers
Permissions with Bitwise Operators
Randomising in JavaScript
Rounding & Formatting Numbers
ParseInt & ParseFloat
Number Bases
Numeric Separators
Objects - Property Configuration
Getters & Setters
Property Descriptors
Seal, Freeze, PreventExtension ( ) Methods
Private Variables
IN Operator (Enumerable Properties)
Iterators & Generators
Iterable vs Enumerable
Iterators vs Generators
Custom Iterators & For...Of Loops
Async Iterators for Big Data Sets
Prototypes, Inheritance
Composition vs Inheritance
Prototypes
Prototype Chain
Visualising Prototypes
Using Prototypes with Arrays
Promises & Async/Await
Synchronous vs Asynchronous
Async/Await
Async/Await combined with Promises
Classes
Introduction to Classes
Classes vs Prototypes
Network Requests
AJAX
Fetch Method for AJAX
Placeholder Images for AJAX
Events
Event Listeners
Event Bubbling & Propgation
Keyboard Events
Event Loops
Code Quality
Namespaced Objects
IIFEs vs Namespaced Objects
Debugging Tips & Tricks
Creating Polyfills
Strict Mode
Code Structure
Error Handling
Try...Catch, Errors, & Exceptions
Regular Expressions
Introduction to Regex
Unicode Characters & Escape Sequences
Web Examples
Array Uses in Web Development
Number Bases
Guides • JavaScript • 25/11/2020
Video
Feedback
Submit and view feedback
This page
View all page feedback
In this article
Video