Skip to content

ashishshres/Learning-JavaScript

Repository files navigation

Learning JavaScript⚙️

Basics

  • Variables
  • Datatypes
  • Conversion and Operation
  • Comparision
  • Stack and Heap Memory
  • Strings
  • Numbers
  • Maths
  • Dates

Arrays

  • push, pop, shift, unshift
  • slice, splice
  • concat(), Spread Operator, flat(), Array.isArray(), Array.from(), Array.of()

Objects

  • Creating Objects using Object Literals and Singleton
  • Accessing Object values
  • Objects and Functions
  • Objects Destructuring
  • JSON
  • Object Methods

Functions

  • Creating Functions
  • Passing Values to a Function
  • Returning from a Function
  • Passing Objects to a Function
  • Passing Arrays to a Function
  • Scopes, this
  • Arrow Functions
  • IIFE
  • Execution Context and Call Stack

Conditionals

  • if and else statements
  • switch statements
  • Truthy and Falsy values
  • Nullish Coalescing Operator ??
  • Ternary Operator ?:

Iterations

  • for loop
  • break and continue
  • while loop
  • do-while loop
  • forof loop, forin loop, forEach loop
  • map, filter and reduce

Document Object Model (DOM)

  • DOM Tree
  • getElementById(), getElementsByClassName(), querySelector(), querySelectorAll()
  • Traversing in DOM Tree
  • Creating a New Element
  • Editing and Removing DOM Elements
  • Events, Event Propagation, Event Bubbling, Event Capturing

Asynchronous JavaScript

  • Async Code, Blocking vs Non Blocking Code
  • Event Loop
  • setTimeout() and setInterval()
  • AJAX
  • Promises
  • Async and Await
  • Fetch

OOP

  • Object Literals
  • Constructor Functions
  • New Instances, new Keyword
  • Prototype, Prototype Inheritance
  • call Keyword, bind Keyword,
  • Classes, Inheritance, super Keyword
  • Static Props
  • Object.getOwnPropertyDescriptor(), Object.defineProperty()
  • Getter and Setter
  • Lexical Scoping and Closures