Please enable JavaScript.
Coggle requires JavaScript to display documents.
JavaScript M.M. :smiley: - Coggle Diagram
JavaScript M.M. :smiley:
Types
typeof operator
special value - NaN
-0 (negative zero)
coercion
abstract operation
ToString()
ToNumber()
ToPrimitive()
ToBoolean()
equality
("==" vs "===")
AVOID:
"==" with 0 or " "
"==" with non-primitives
"==" true or "==" false. use "==="
static type
TypeScript/Flow
primitive types
string
number
undefined
boolean
object
symbol
Scope
nested scope
function expressions
(Named) Function Declaration > Named F. Expression. >Anonymous F. D.
IIFE
var, let, const
lexical scope
"use strict" mode
closure
inner function
outer function
variable scope
nested functions
modules
import
export
hoisting
function hoisting
variable hoisting
Objects
"this" keyword
implicit binding
explicit binding
lexical binding
new binding
default binding
"class" keyword
OLOO
prototypes
prototypal inheritance
generators
"*" + yield
event loop
iterators
.next()
Asynchronus JS
setTimeout
promises
fulfilled
pending
rejected
.then()
.catch()
Promise.all()
callbacks
async await
setInterval
Loops
do...while
for
break/continue
for...in
while
for...of
Control Flow
if...else
switch
try/catch/throw