0% found this document useful (0 votes)
11 views6 pages

Javascript Topic

Uploaded by

adamhshaikh2018
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views6 pages

Javascript Topic

Uploaded by

adamhshaikh2018
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Mastering the Art of JavaScript with Krishna Bokefod

JavaScript Topics

1. JavaScript Basics
- Variables and Constants (`var`, `let`, `const`)
- Data Types(string, number, boolean, null, undefined, symbol,
bigint)
- Type Coercion (implicit and explicit conversions)
- Operators
- Arithmetic operators (`+`, `-`, `*`, `/`, `%`)
- Comparison operators (`==`, `===`, `!=`, `!==`, `<`, `>`)
- Logical operators (`&&`, `||`, `!`)
- Assignment operators (`=`, `+=`, `-=`, etc.)
- Bitwise operators (`&`, `|`, `^`, `~`)
- Ternary operator (`condition ? value1 : value2`)
- Truthy and Falsy Values
- Control Flow
- Conditional statements (`if`, `else`, `else if`, `switch`)
- Loops (`for`, `while`, `do-while`, `for...in`, `for...of`)
- Break and continue statements

2. Functions
- Function Declaration
- Function Expression
- Arrow Functions
- Higher-Order Functions (functions that accept or return other
functions)
- Anonymous Functions
- IIFE (Immediately Invoked Function Expression)
- Parameters vs Arguments
- Default Parameters
- Rest Parameters
- Spread Operator in Function Calls
- Closures
- Function Hoisting
- Call, Apply, and Bind Methods
Mastering the Art of JavaScript with Krishna Bokefod

- Callback Functions
- Pure Functions

3. Scope and Hoisting


- Global Scope
- Local Scope (function scope, block scope)
- Lexical Scope
- Scope Chain
- Hoisting (variable and function hoisting)
- Temporal Dead Zone (with `let` and `const`)

4. Objects and Prototypes


- Creating Objects (`{}`, `Object.create()`)
- Object Properties and Methods*
- Accessing Properties (dot vs bracket notation)
- Adding and Deleting Properties
- Shallow Copy vs Deep Copy
- Object.assign() and Spread Operator
- Prototypes and Prototype Chain
- Object Inheritance
- `this` Keyword* in Objects
- Constructor Functions
- `Object.seal()` and `Object.freeze()`

5. Arrays
- *Creating Arrays (`[]`, `new Array()`)
- *Array Methods
- Mutating: `push()`, `pop()`, `shift()`, `unshift()`, `splice()`
- Non-mutating: `map()`, `filter()`, `reduce()`, `forEach()`,
`concat()`, `slice()`, `join()`
- Searching: `find()`, `findIndex()`, `indexOf()`, `includes()`
- Destructuring Arrays
- Spread Operator with Arrays
- Array-Like Objects (`arguments` object, NodeList)
Mastering the Art of JavaScript with Krishna Bokefod

6. Strings and Template Literals


- String Methods (`charAt()`, `indexOf()`, `substring()`, `slice()`,
`split()`, `trim()`)
- Template Literals (multi-line strings, variable interpolation)
- Escape Characters (`\n`, `\t`, etc.)

7. Event Handling
- Event Listeners (`addEventListener`)
- Event Object (`event.target`, `event.currentTarget`)
- Event Propagation
- Event Bubbling
- Event Capturing
- *Preventing Default Behavior (`event.preventDefault()`)
- *Event Delegation
- *Stopping Propagation (`event.stopPropagation()`)

8. ES6+ Concepts
- Arrow Functions
- Destructuring (Arrays, Objects)
- Rest and Spread Operators
- Default Parameters
- Modules (`import`, `export`)
- `let` and `const` vs `var`
- Iterators and Generators
- Symbols
- WeakMap and WeakSet

9. Promises and Asynchronous JavaScript


- Callbacks
- Promise Constructor
- `then()` and `catch()`
Mastering the Art of JavaScript with Krishna Bokefod

- Chaining Promises
- `async` and `await`
- Error Handling in Async Functions
- Promise.all() and Promise.race()

10. Browser APIs and DOM Manipulation


- Selecting Elements (`getElementById()`, `querySelector()`,
`querySelectorAll()`)
- Modifying Content (`innerHTML`, `textContent`)
- Adding and Removing Elements (`appendChild()`,
`removeChild()`)
- Modifying Styles (`element.style`)
- DOM Events (click, input, change, etc.)
- Form Handling (input validation, submitting forms)
- LocalStorage and SessionStorage
- Cookies

11. Error Handling


- `try-catch-finally`
- Throwing Errors
- Custom Errors
- Error Types (`TypeError`, `ReferenceError`, `SyntaxError`)

12. Classes and OOP


- Class Declaration
- Class Expressions
- Constructor Method
- Getters and Setters
- Inheritance with `extends`
- Static Methods
- Private Properties and Methods (using `#`)
Mastering the Art of JavaScript with Krishna Bokefod

13. Modules and Package Management


- ES6 Modules* (`import`, `export`)
- Default Exports vs Named Exports
- CommonJS Modules (`require`, `module.exports`)
- Package Management with NPM
- Bundlers (Webpack, Vite, Parcel)

14. Advanced Topics


- Closures
- Currying
- Memoization
- Debouncing and Throttling
- Hoisting
- Event Loop
- Microtasks and Macrotasks
- Weak References
- Proxy and Reflect API

15. Testing and Debugging


- Console Methods (`console.log()`, `console.error()`,
`console.table()`)
- Debugger Statement
- Unit Testing Frameworks (Jest, Mocha)
- TDD and BDD Concepts

16. JavaScript Patterns


- Module Pattern
- Singleton Pattern
- Observer Pattern
- Factory Pattern
Mastering the Art of JavaScript with Krishna Bokefod

- Prototype Pattern

17. Networking and APIs


- Fetch API
- XHR (XMLHttpRequest)
- AJAX Basics
- Handling JSON Data
- CORS (Cross-Origin Resource Sharing)
- WebSockets

18. State Management in JavaScript Frameworks


- Redux (actions, reducers, store, middleware)
- Context API in React
- State Hooks in React (`useState`, `useReducer`)

You might also like