Skip to content

Wisp80/learning-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning JavaScript

  • 001 Variables part 001: use strict, creating multiple variables, reassignment
  • 002 Data Types part 001: Infinity, NaN, bigInt, comparing, typeof
  • 003 Type Conversion part 001
  • 004 Basic math operators part 001: plus, minus, bitwise operator NOT. Type Conversion part 002
  • 005 Сomparison operators part 001. Type Conversion part 003
  • 006 Ternary operator part 001
  • 007 Logic operators part 001: ||, ||=, &&, &&=
  • 008 Nullish coalescing operator ?? and Nullish coalescing assignment ??=
  • 009 Loops part 001: while, do...while, for, break, continue, labels
  • 010 switch/case part 001
  • 011 Function Declaration vs Function Expression part 001. Hoisting part 001
  • 012 Arrow functions part 001
  • 013 Tests part 001
  • 014 Objects part 001: in, keys, property order
  • 015 Objects part 002: comparing objects and other data types. Deep copy vs Shallow copy part 001: for...in, Object.assign(), structuredClone()
  • 016 Garbage collection part 001
  • 017 Objects part 003: this. Arrow functions part 001: this
  • 018 Constructors part 001: new.target, return
  • 019 Objects part 004: Optional chaining operator part 001
  • 020 Symbols part 001: symbols as object properties, for..in, Object.assign(), Symbol.for()
  • 021 Type conversion part 004: Symbol.toPrimitive, valueOf, toString
  • 022 Primitives part 001: methods, String, Number, Boolean, null, undefined
  • 023 Primitives part 002: numbers, numeral systems, toString, floor, ceil, round, trunc, rounding, toFixed, NaN, Infinity, -0, isNaN, isFinite, parseInt, parseFloat, random, max, min
  • 024 Primitives part 003: strings, quotes, at, for..of, indexOf, lastIndexOf, includes, startsWith, endsWith, slice, substring, substr, codes, comparing
  • 025 Arrays part 001: at, pop, push, shift, unshift, length, for..of, for..in, new Array, comparing
  • 026 Arrays part 002: delete, splice, slice, concat, forEach, indexOf, includes, lastIndexOf, find, findIndex, findLastIndex, filter, map, sort, reverse, split, join, reduce, reduceRight, Array.isArray, thisArg
  • 027 Lesson 027 SetTimeout and setInterval part 001: this
  • 028 Iterable objects part 001: Symbol.iterator, for..of, Array.from. Pseudo arrays part 001
  • 029 Map part 001 and Set part 001: set, get, has, delete, clear, size, keys, values, entries, for..of, forEach, Object.entries, Object.fromEntries, add
  • 030 WeakMap part 001 and WeakSet part 001: additional storage and caching
  • 031 Object.keys, Object.values, Object.entries, Object.getOwnPropertySymbols, Reflect.ownKeys
  • 032 Destructuring Assignment part 001, Rest operator part 001
  • 033 Date part 001
  • 034 JSON part 001
  • 035 Recursion in JS part 001
  • 036 Rest parameters part 001. Spread operator part 001: Spread operator vs Array.from
  • 037 Closure part 002: LexicalEnvironment, Environment Record, Environment
  • 038 var vs let vs const part 001. Hoisting part 001. Immediately-invoked function expressions part 001
  • 039 Global object part 001. var vs let vs const part 002
  • 040 new Function part 001
  • 041 setTimeout and setInterval part 002: clearTimeout, clearInterval
  • 042 Decorators part 001: call, apply. Method borrowing part 001
  • 043 Function Object part 001: name, length. Named Function Expression part 001: name
  • 044 Losing this part 001: bind. Partial Aplication part 001: bind
  • 045 Arrow functions part 002: new, bind, call, apply, arguments
  • 046 Property descriptors part 001: writable, enumerable, configurable, Object.getOwnPropertyDescriptor, Object.defineProperty
  • 047 Property-accessors part 001: get, set
  • 048 __ proto __ vs prototype part 001: Prototype, get, set, this, for..in, Object.prototype
  • 049 __ proto __ vs prototype part 002: new, prototype, constructor
  • 050 __ proto __ vs prototype part 003: Native prototypes
  • 051 __ proto __ vs prototype part 004: Object.create, Object.getPrototypeOf, Object.setPrototypeOf, Object.getOwnPropertyNames, __ proto __ as non-object
  • 052 __ proto __ vs prototype part 005: a lot of information
  • 053 Classes part 001: class, constructor, new, prototype, Class Declaration, Class Expression, Named Class Declaration, accessors
  • 054 Classes part 002: extends, super, overriding methods, ConstructorKind, HomeObject
  • 055 Classes part 003: static methods and properties, static
  • 056 Classes part 004: private methods and properties, #, incapsulation
  • 057 Classes part 005: extending built-in classes, Symbol.species
  • 058 Classes part 006: instanceof, Symbol.hasInstance, isPrototypeOf, Object.prototype.toString, Symbol.toStringTag
  • 059 Classes part 007: Mixins, Listener pattern
  • 060 try..catch part 001: error objects, try..catch..finally, try..finally, window.onerror
  • 061 try..catch part 002: extending built-in Error classes
  • 062 Objects part 005: automatically created object properties
  • 063 Constructors part 002: Functional inheritance
  • 064 Callbacks part 001: onload, onerror
  • 065 Promises part 001: Promise, resolve, reject, state, result, then, catch, finally
  • 066 Promises part 002: Promise chaining, thenable, fetch, response, response.text, response.json
  • 067 Promises part 003: Error handling, unhandledrejection
  • 068 Promises part 004: Promise.all, Promise.allSettled, Promise.race, Promise.any, Promise.resolve, Promise.reject
  • 069 Promises part 005: Promisification
  • 070 Promises part 006: PromiseJobs, microtask queue, Event Loop
  • 071 Promises part 007: async, await, thenable, try..catch
  • 072 Generators part 001: yield, next, for..of, spread operator, Symbol.iterator, generator composition, throw
  • 073 Async iterators part 001 and async generators part 001: Symbol.asyncIterator, async, await, match
  • 074 Modules part 001: export, import, use strict, closure, import.meta, this, defer, async, DOMContentLoaded, bare modules, nomodule
  • 075 Modules part 002: as, *, re-export
  • 076 Modules part 003: static vs dynamic import/export, import()
  • 077 Proxy part 001. Reflect part 001
  • 078 eval part 001
  • 079 Currying part 001: Partials
  • 080 Reference type part 001
  • 081 Bitwise operators part 001
  • 082 Data Types part 002: BigInt
  • 083 Data Types part 003: Strings, Unicode, surrogate pairs, diacritical signs, normalization
  • 084 Internationalization in JS part 001: Intl.Collator, Intl.DateTimeFormat, Intl.NumberFormat, locales, localeMatcher, localeCompare, toLocaleString, toLocaleDateString, toLocaleTimeString, toLocaleString
  • 085 WeakRef part 001. FinalizationRegistry part 001

About

JavaScript topics I have explored

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published