From Siarhei
Last updated
Was this helpful?
Last updated
Was this helpful?
ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°:
Gaps after checkpoint #1:
ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ (new Number, ...)
typeof(NaN)
Yes, typeof(NaN)
is number. You can check if the value is NaN
specifically using the function isNaN
.
ΠΌΡΡΠ°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
for in Array
is Birthday func clear?
ΠΠΎΠΌΠΌΠΈΡ - ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°; ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅, ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π°, Ρ ΡΠ°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ².
git merge - Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΡΠΎΡΠΈΠΈ
git rebase - Π½Π΅Π»ΡΠ·Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π»ΡΠ΄ΡΠΌ ΡΡΠ°Π·Ρ. ΠΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΠΎΠ±ΡΠ°Π·ΡΡΡΡΡ ΡΠ»ΠΎΠΌΠ°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ. ORIG HEAD.
git pull = git fetch + git merge pull ΡΠ»ΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½Π΅ Π΄Π°Π²Π°Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡ . fetch ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΠΉ
git push -f ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅ΡΡ ΡΡΠΆΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ.
git ignore - ΡΠ°ΠΉΠ».
fork - Π΄Π»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΎΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»-Π²Π° Π»ΡΠ΄Π΅ΠΉ.
Hash table, set
match ALL
TS 13 Π·Π°Π΄Π°Ρ
window.location
OOP, FP, FRP + ΠΠ°ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅/ΡΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅/ΠΌΠ΅ΠΌΠΎΠΈΠ·Π°ΡΠΈΡ
HTTP, WS, REST, REST Full API
Performance (Optimization Techniques)
BOM, DOM, Storages
Loader, Plugin (webpack)
Require vs import (module system)
SPA vs MPA
several design patterns (e.g Decorator, Singleton, Factory)
generic
Type
https://www.typescriptlang.org/docs/handbook/intro.html (Π΄ΠΎ Generic)
Π’ΠΈΠΏΡ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΠΈ (ΠΈ Π² js, ts); --
CORS *
CSS grid *
Dod
DoR
ΡΡΡΠΈΠΌΠ°ΡΠΈΠΈ
ΠΈΠ·-Π·Π° ΠΈΡΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠ°Π·Π΄ΡΠ²Π°Π΅ΡΡΡ Π²ΡΠ΅ΠΌΡ
Π’Π°ΠΉΠΎΡΠ°
ΠΠΎΡΠ΄Π° + ΠΊΠΎΠ»-Π²ΠΎ ΡΠ°ΡΠΎΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅,
ΡΡΡΡ: Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΡΠ°ΡΠΊΠΈ + ΡΠ΅Π»ΠΈΠ·
JavaScript Π½Π΅ΠΏΡΠ΅ΠΊΠ»ΠΎΠ½Π½ΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ, Π° ΡΠΆΠ΅ Π·Π°ΡΠ΅ΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π½Π°ΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
ΠΡΠ΅ Π½Π΅ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠΎ ΠΏΠΎ ΡΠ°ΠΊΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅:
ΠΠ»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
ΠΡ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ, ΡΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² Π»ΠΎΠ³Π΅ Π±ΡΠ΄Π΅Ρ: ReferenceError: HOIST IS NOT DEFINED
, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌ Π²ΡΠ²Π΅Π»ΠΎ undefined
.
ΠΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ JavaScript Β«ΠΏΠΎΠ΄Π½ΡΠ»Β» ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π΄Π»Ρ Π΄Π²ΠΈΠΆΠΊΠ° JavaScript:
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄Π΅Π»ΠΈ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡΡΡ Π²Π²Π΅ΡΡ . ΠΠ°Π»ΡΡΠ΅ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΈ Β«ΠΏΠΎΠ΄Π½ΡΡΠΈΠΈΒ» Π² ΡΡΠ½ΠΊΡΠΈΡΡ .
ΠΠΎΡ ΠΊΠ°ΠΊ Π΄Π²ΠΈΠΆΠΎΠΊ Π²ΠΈΠ΄ΠΈΡ ΠΊΠΎΠ΄ Π²ΡΡΠ΅:
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ var message
, ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΡΠ½ΠΊΡΠΈΠΈ hoist()
, Β«ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡΒ» Π½Π°Π²Π΅ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΈ.
Strict mode
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΠΎ ΡΡΠΎ ΠΌΡ ΠΏΡΠΎΠΏΡΡΡΠΈΠ»ΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π°ΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, use strict
ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Π½Π°Ρ Π½Π° ΠΏΠΎΠ»ΠΏΡΡΠΈ, Π²ΡΠ΄Π°Π² Reference error
.
ΠΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΠ΄Π΅ΡΡ ΡΠ° ΠΆΠ΅ ΡΠΈΡΡΠ°ΡΠΈΡ. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ a ΠΈ b ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄ΠΎ ΠΎΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠΌ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ undefined. Π Π΅ΡΠ»ΠΈ ΡΠΌΠ½ΠΎΠΆΠΈΡΡ undefined Π½Π° undefined, ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠΌ Not a Number (NaN).
ΠΠ°ΠΊ ΠΈ Ρ var
, ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ, ΡΡΠΎ Π²ΡΠ²Π΅Π΄Π΅ΡΡΡ Π² Π»ΠΎΠ³ undefined
. ΠΠΎ ΡΠ°ΠΊ ΠΊΠ°ΠΊ es6 let
Π½Π΅Π΄ΡΡΠΆΠ΅Π»ΡΠ±Π½ΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π½Π΅ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Π²ΡΠ΄Π°Π΅Ρ Π½Π°ΠΌ Reference
ΠΎΡΠΈΠ±ΠΊΡ.
ΠΡΠΈΠΌΠ΅Ρ Π½ΠΈΠΆΠ΅ Π²ΡΠ΄Π°ΡΡ undefined
Π²ΠΌΠ΅ΡΡΠΎ Reference error
.
ΠΡΠ»ΠΈ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΏΠ΅ΡΠ΅Π½Π°Π·Π½Π°ΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½Π½ΠΎΠ΅ ΠΊ const
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ:
ΠΠ°ΠΊ const
ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ?
ΠΠ°ΠΊ ΠΈ Ρ let
, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΈΡ
ΠΎΠ³ΠΎ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎΠ³ΠΎ Π²ΡΡ
ΠΎΠ΄Π° Ρ undefined
, Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠΏΠ°ΡΠ°Π΅Ρ Π½Π°Ρ, Π²ΡΠ΄Π°Π²Π°Ρ Reference error
.
Π’ΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ const
Π² ΡΡΠ½ΠΊΡΠΈΡΡ
.
Π’Π°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡΡΡ Π²Π²Π΅ΡΡ ΠΊΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ JavaScript ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ΅ΠΆΠ΄Π΅, ΡΠ΅ΠΌ ΠΌΡ ΠΈΡ ΠΎΠ±ΡΡΠ²ΠΈΠΌ ΠΏΠΎ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ Π² ΠΊΠΎΠ΄Π΅.
ΠΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΡΡ Π²ΡΡΠ΅, ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ var expression
ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡ, Π½ΠΎ Π΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ β Π½Π΅Ρ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π²ΠΈΠΆΠΎΠΊ Π²ΡΠ΄Π°ΡΡ TypeError
ΠΊΠ°ΠΊ ΡΠ²ΠΈΠ΄ΠΈΡ expression
Π² Π²ΠΈΠ΄Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½ΠΎΠΉ, Π° Π½Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Β«ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡΡΡΒ» Π½Π°Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , Π½ΠΎ Π½Π΅ Π½Π°Π΄ ΠΈΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ.
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΌΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΉ, JavaScript Π΄Π²ΠΈΠΆΠΎΠΊ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π±Ρ Π²Π·ΡΠ» double
ΡΡΠ½ΠΊΡΠΈΡ.