Introduction to JavaScript
No overload, no overwhelm—just clear, structured lessons in bite-sized portions. We’ve carefully selected essential material to help you progress smoothly, without unnecessary complexity.
About this course
You’ll begin with core JavaScript concepts like variables, conditions, and loops, then gradually build up to more advanced topics such as data structures, error handling, and asynchronous functions. Each step includes links to additional resources you can revisit anytime—ensuring you’re never stuck and always supported. By the end of the course, you’ll have a strong foundation to explore advanced JavaScript frameworks and pursue professional web application development.
This course runs directly in your JetBrains IDE
Content
- Creating variables
- More about variables
- Variable naming rules
- Constants
- Variable scopes
- Declaration-Initialization-Usage
- Hoisting
- Dynamic and Weak typing
- typeof Operator
- Primitive Types
- Objects Introduction
- Data Property and Accessor Property
- Built-in Objects: String
- Built-in Objects: Number
- Built-in Objects: Date
- Type Coercion
- More about Objects
- Working with properties
- Introduction to Arrays
- More about Arrays
- Array methods
- Multidimensional Arrays
- Map
- Set
- Arithmetic operators
- String arithmetic operators
- Operator precedence
- Increment and decrement
- Logical operators
- Implicit type conversions
- Comparisons
- Weak and strict equal
- if-else
- Ternary operator
- Switch
- Introduction to functions
- Parameters and return value
- Function expressions
- Arrow functions
- Closures
- While
- For
- For..in
- For..of
- Break and continue
- Object references and copying
- Copying complex objects
- Object to primitive coercion; "this" keyword
- Object comparison
- Prototypal inheritance
- Introduction to classes
- Class inheritance
- Method overriding
- Static properties and methods
- Private and protected properties and methods
- instanceof operator
- Naive approach
- Try...catch
- Throw operator
- Conditional catch and finally blocks
- Callbacks
- Promise
- Promise chaining
- Async/await
Learn directly inside your JetBrains IDEs
What do you need to start?
The JetBrains Toolbox App makes setting up your course effortless. Already have a compatible IDE? It will launch it. If not, the app will install the right free IDE for your course.
Learn more about our licences here.
Click Launch course and then Allow to open the Toolbox App.
Select Always Allow to skip this confirmation in the future.
To return to the course later, find it in your IDE's recent projects.
Need more help? Check out our guide.
The JetBrains Toolbox App makes setting up your course effortless. Already have a compatible IDE? It will launch it. If not, the app will install the right free IDE for your course.
Learn more about our licences here.
Click Launch course and then Allow to open the Toolbox App.
Select Always Allow to skip this confirmation in the future.
To return to the course later, find it in your IDE's recent projects.
Need more help? Check out our guide.
FAQ and troubleshooting
Yes, you will need the JetBrains Toolbox App and a JetBrains IDE.
But don’t worry! Just click the Open course button and then select Allow in the resultant popup to install the JetBrains Toolbox App. We've taken care of all the necessary settings, and the app will handle the rest of the setup for you.
The JetBrains Toolbox App checks which IDE is compatible with your course and whether it is installed on your computer. If you have the necessary IDE installed, the app will open it. If not, JetBrains Toolbox will initiate the installation, prioritizing free community editions.
Yes, the JetBrains Toolbox App is essential even if you already have a JetBrains IDE. It automatically prepares your IDE for studying by installing the essential plugins and updating the IDE if necessary.
Please make sure your version of the JetBrains Toolbox App is 1.28 or newer. To update, open the app and click Update Toolbox App to 2.x.x., or download the latest version here.