Skip to content

AltyAlty/js-random-lessons

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaScript random lessons

SEASON 01:

  • 01 How to use JS inside HTML
  • 02-03 HTML part 001: a little about spaces and text in HTML
  • 04-05 CSS part 001: How to use CSS inside HTML
  • 06 Code execution order in JS
  • 07 How to name variables
  • 08 Hot get elements by ID and class in JS
  • 09 How to change HTML using JS
  • 10 How to use JS and CSS files
  • 11-12 Functions part 001
  • 13 Functions part 002
  • 14 Events part 001: addEventListener
  • 15-19 Events part 002: event.currentTarget, simple calculators
  • 20 CSS part 002: hover
  • 21-24 Objects part 001: this, simple slider
  • 25 Objects part 002: simple slider using the factory method pattern
  • 26 Constructors part 001: new
  • 27 Constructors part 002: simple slider using the factory method pattern
  • 28 __ proto __ vs prototype part 001: Constructors, new, prototype

SEASON 02:

  • 01-05 Cars example using functions
  • 06-11 Cars example using constructors and multiple JS files
  • 12 Objects part 003: associative arrays
  • 13-16 Cars example using classes and events
  • 17-22 Constructors part 003: simple slider using multiple constructors, jQuery and UI-BLL-DAL structure
  • 23-24 Callback part 001: What is callback
  • 25-29 Rating gallery example with UI-BLL-DAL structure
  • 30-32 Objects part 004: this
  • 33-39 Events part 003: removeEventListener
  • 40-48 Requests part 001: Ajax, Promises, Axios, JQuery, fetch, XMLHttpRequest

SEASON 03:

  • 01 Events part 004: event.currentTarget vs event.target. Type conversion part 001: pseudo truth and lie
  • 02 Objects part 005: undefined as a property, foobar double assignment example
  • 03 Deep Copy vs Shallow Copy part 001
  • 04 use strict part 001, object as a property's name. Closure part 001. var vs let vs const part 001. Type conversion part 002
  • 05 Functions part 003: returning another function, Function. Recursion part 001. Immediately-invoked function expressions part 001
  • 06 var vs let vs const part 002: var vs let inside for. === & ==, call stack. Recursion part 002. Type conversion part 003. Arrays part 001: push, unshift, spread syntax
  • 07 Getting an element with a non-existent selector
  • 08 Immediately-invoked function expressions part 002. Objects part 006: bind. Promises part 001: async/await part 001
  • 09 Doubly linked list. Arrays part 002: splice, reverse, indexOf, map
  • 10 What is SSR, EJS, Express, React Native, transaction, Saga
  • 11 Functional programming part 001: functors, monads, functional object, currying
  • 12 What is SPA, SSR, Node.js, npm, npx
  • 13 Calculator App using functions
  • 14 Promises part 002: then, catch. Examples of simple routing
  • 15 Arrow functions part 001. Objects part 007: short object initialization, associative arrays. Increment and Decrement
  • 16 React part 001: Class component lifecycle method. Promises part 003: Promises.all
  • 17 FizzBuzz
  • 18 React part 002: deconstructing React
  • 19 SOLID part 001
  • 20 OOP part 001: Encapsulation, Inheritance, Polymorphism, Abstraction
  • 21 Kill all squares Game
  • 22 Isaac randomizer App
  • 23 Promises part 004: async/await wrapper for a delay function
  • 24 Using for in another for
  • 25 CSS part 003: selectors
  • 26 CSS part 004: Box model part 001
  • 27 CSS part 005: Box model part 002: box-sizing
  • 28 CSS part 006: position
  • 29 CSS part 007: z-index
  • 30 CSS part 008: display, inline, inline-block, float, clear
  • 31 CSS part 009: Grid part 001
  • 32 CSS part 010: Flexbox part 001
  • 33 CSS part 011: Flexbox part 002
  • 34 CSS part 012: Flexbox part 003
  • 35 CSS part 013: Flexbox part 004
  • 36 CSS part 014: Responsive design with media queries
  • 37 Objects part 008: assigning an object property value to another property of the object while declaring the object
  • 38 CSS part 015: Flexbox vs Grid part 001
  • 39 typeof NaN, do while. Property-accessors part 001: get
  • 40 Promises part 005: async/await/promises in the Event Loop
  • 41 Promises part 006: what is an async function
  • 42 Using forEach in another forEach
  • 43 setTimeout and setInterval part 001: using setTimeout in another setTimeout
  • 44 Canvas part 001: fillStyle, fillRect, createLinearGradient, createRadialGradient, createPattern
  • 45 Canvas part 002: clearRect, strokeStyle, strokeRect
  • 46 Canvas part 003: font, measureText, beginPath, fillText, moveTo, lineTo, lineWidth
  • 47 Canvas part 004: strokeText, lineCap
  • 48 Canvas part 005: lineJoin, setLineDash, getLineDash, lineDashOffset
  • 49 Canvas part 006: Marching ants
  • 50 Canvas part 007: textAlign, fillText, textBaseline, direction
  • 51 Canvas part 008: shadowColor, shadowOffsetX, shadowOffsetY, shadowBlur
  • 52 Canvas part 009: bezierCurveTo, quadraticCurveTo, arc, closePath
  • 53 Canvas part 010: arcTo, ellipse
  • 54 Canvas part 011: clientX, clientY, offsetLeft, offsetTop, isPointInPath, activeElement, textContent, drawFocusIfNeeded
  • 55 Canvas part 012: clip
  • 56 Canvas part 013: clip, evenodd
  • 57 Canvas part 014: clip with intersection of two paths
  • 58 Canvas part 015: isPointInStroke
  • 59 Canvas part 016: setTransform, rotate
  • 60 Canvas part 017: scale, translate
  • 61 Canvas part 018: transform, resetTransform
  • 62 Canvas part 019: Drawing charts App in Canvas, save, restore
  • 63 Canvas part 020: globalAlpha, globalCompositeOperation
  • 64 Canvas part 021: drawImage
  • 65 Canvas part 022: drawImage, Image(), naturalWidth, naturalHeight, width, height
  • 66 Canvas part 023: imageData, createImageData, putImageData
  • 67 Canvas part 024: getImageData
  • 68 Canvas part 025: imageSmoothingEnabled, imageSmoothingQuality
  • 69 Canvas part 026: filter
  • 70 Canvas part 027: stroke, fill, fontKerning, createConicGradient
  • 71 Canvas part 028: getTransform
  • 72 Canvas part 029: Date, requestAnimationFrame
  • 73 Canvas part 030: innerHeight, innerWidth, trail effect
  • 74 Simple counter
  • 75 Canvas part 031: cancelAnimationFrame, getBoundingClientRect, clientX, clientY
  • 76 Canvas part 032: getting pixel data with getImageData
  • 77 Canvas part 033: Drawing radar App using circle coordinates
  • 78 Canvas part 034: Collision detection system for basic 2D games App
  • 79 Canvas part 035: Drawing GIF
  • 80 Canvas part 036: Basic runner Game
  • 81 Calculator App using objects and Flexbox
  • 82 Canvas part 037: Basic platform Game with scrolling and pixel kinda perfect collision detection
  • 83 Set part 001
  • 84 HTML part 002: forms

SEASON 04:

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

About

List of JavaScript details I have been studied

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published