Skip to content

Latest commit

 

History

History
100 lines (96 loc) · 1.98 KB

javascript.md

File metadata and controls

100 lines (96 loc) · 1.98 KB

Javascript Topics:

  • primitives data types
  • variables, string, numbers, booleans, undefined, null, NaN
  • arithmetic operators
  • comparison operators
  • logical operators
  • conditional statements (if else, switch)
  • functions, arguments, return statement, scope
  • callbacks, higher order functions
  • for loops, while, do while
  • Arrays
    • declaration
    • accessing items
    • assignment
    • Array methods
    • 2D array
    • 3D array
    • forEach, map, reduce, filter callbacks
  • Objects
    • difference from arrays
    • key value pair
    • accessing values
    • assigning values
    • methods
    • for in loop
    • this
  • hoisting
  • scopes
    • global
    • local scope
    • block scope
  • closures
  • lexical scoping
  • Execution context
  • strict mode
  • solve problems faster by using objects
  • recursion
  • DOM manipulation
    • createElement
    • append
    • getElementById
    • querySelector
    • querySelectorAll
    • setAttribute
    • children methods
  • event API, eventListener
  • event bubbling
  • event capturing
  • style and attribute manipulation with DOM
  • JSON
  • using AJAX / XHR
  • callback, callback hell
  • asyncrnonous behavior in javascript
    • setTimeout
    • setInterval
  • event loop
    • call stack
    • task/event queue
  • WEB API
  • promises
    • promise chaining
    • advantage over callbacks
  • async, await
  • fetch API
  • axios
  • CORS
  • jQuery
  • IIFE
  • anonymous functions
  • Sets, Map
  • modules
  • localStorage, cookie, sessionStorage
  • ECMAScript, TC39
  • polyfill
  • tree shaking
  • HTTP protocols
  • Implementation of Stacks, Queues, Linked List, Trees (Binary Tree, Nary Tree), Graphs
  • Traversing, reversing, mirror, and other operations for LinkedList, Trees, Graphs (1st, 2nd, 3rd level)

ES6 and others:

  • var let const
  • arrow functions
  • template literals
  • destructuring
  • default params
  • event loop
  • promises, async, await, fetch, axios
  • classes
  • this
  • inheritance, and prototype
  • call apply bind
  • getters
  • setters
  • generators
  • yield
  • BigInt
  • Optional Chaining