Loading progress…

JavaScript

The language of the web: syntax, the runtime, and the modern JavaScript ecosystem.

Introduction to JavaScriptWhat is JavaScriptHistory of JavaScriptJavaScript VersionsHow to run JavaScriptVariable DeclarationsHoistingVariable Naming RulesVariable ScopesvarletconstBlockFunctionGlobalAll about VariablesData TypesstringundefinednumberbigintbooleannullSymbolPrimitive TypesObjectObject PrototypePrototypal Inheritancetypeof operatorBuilt-in ObjectsType CastingType Conversion vs CoercionExplicit Type CastingImplicit Type CastingData StructuresKeyed CollectionsMapWeak MapSetWeak SetIndexed CollectionsTyped ArraysArraysStructured DataJSONEquality Comparisons=====Object.isValue Comparison OperatorsisLooselyEqualisStrictlyEqualSameValueZeroEquality AlgorithmsLoops and Iterationsfordo...whilewhilefor...in loopfor...of loopbreak / continueControl FlowExceptional HandlingConditional Statementsif...elseSwitchthrow statementtry/catch/finallyError ObjectsExpressions & OperatorsAssignment OperatorsComparison OperatorsArithmetic OperatorsBitwise OperatorsLogical OperatorsBigInt OperatorsString OperatorsConditional OperatorsComma OperatorsUnary OperatorsFunctionsFunction ParametersArrow FunctionsIIFEsarguments objectScope & Function StackBuilt-in FunctionsDefault ParamsRestRecursionLexical ScopingClosuresStrict ModeUsing (this) keywordin a methodin a functionusing it alonein event handlersin arrow functionsFunction BorrowingExplicit BindingcallapplybindAsynchronous JavaScriptEvent LoopsetTimeoutsetIntervalCallbacksPromisesCallback Hellasync/awaitWorking with APIsFetchXMLHTTPRequestClassesIterators and GeneratorsModules in JavaScriptCommonJSESMMemory ManagementMemory LifecycleDOM APIsGarbage CollectionUsing Browser DevToolsDebugging IssuesDebugging Memory LeaksDebugging PerformanceSameValue