From Siarhei

Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ порядка:

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

ΠšΠΎΠΌΠΌΠΈΡ‚ - состояниС Ρ„Π°ΠΉΠ»Π°; сохранСниС, фиксация ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π°, Ρ…Ρ€Π°Π½ΠΈΡ‚ измСнСния Ρ„Π°ΠΉΠ»ΠΎΠ².

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 *

Agile, Scrum, Kanban, Waterfall

Dod

DoR

Scrum

эстимации

ΠΈΠ·-Π·Π° итСративности раздуваСтся врСмя

Kanban

Π’Π°ΠΉΠΎΡ‚Π°

Π‘ΠΎΡ€Π΄Π° + ΠΊΠΎΠ»-Π²ΠΎ тасок ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅,

ΡΡƒΡ‚ΡŒ: быстро ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ таски + Ρ€Π΅Π»ΠΈΠ·

ВспылиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Hoisting)

ВсплытиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

JavaScript Π½Π΅ΠΏΡ€Π΅ΠΊΠ»ΠΎΠ½Π½ΠΎ сначала ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚, Π° ΡƒΠΆΠ΅ Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ наши ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

ВсС Π½Π΅ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ это ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅:

var

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ΠœΡ‹ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π»ΠΎΠ³Π΅ Π±ΡƒΠ΄Π΅Ρ‚: 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).

let

Как ΠΈ с var, ΠΌΡ‹ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ вывСдСтся Π² Π»ΠΎΠ³ undefined. Но Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ es6 let Π½Π΅Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½ΠΎ относится ΠΊ Π½Π΅ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½Π°ΠΌ Reference ΠΎΡˆΠΈΠ±ΠΊΡƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ выдаст undefined вмСсто Reference error.

const

Если ΠΌΡ‹ попытаСмся ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½ΠΎΠ΅ ΠΊ const ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

Как const измСняСт объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ?

Как ΠΈ с let, вмСсто Ρ‚ΠΈΡ…ΠΎΠ³ΠΎ спокойного Π²Ρ‹Ρ…ΠΎΠ΄Π° с undefined, Π΄Π²ΠΈΠΆΠΎΠΊ спасаСт нас, выдавая Reference error.

Π’ΠΎΠΆΠ΅ самоС происходит ΠΏΡ€ΠΈ использовании const Π² функциях.

ВсплытиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Function Declaration:

Π’Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π²Π²Π΅Ρ€Ρ… ΠΊΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ понятно ΠΏΠΎΡ‡Π΅ΠΌΡƒ JavaScript позволяСт Π½Π°ΠΌ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΈΡ… объявим ΠΏΠΎ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡŽ Π² ΠΊΠΎΠ΄Π΅.

Function Expression:

Как ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²Ρ‹ΡˆΠ΅, объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ var expression поднимаСтся, Π½ΠΎ Π΅Π³ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ β€” Π½Π΅Ρ‚. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Π²ΠΈΠΆΠΎΠΊ выдаст TypeErrorΠΊΠ°ΠΊ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ expression Π² Π²ΠΈΠ΄Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½ΠΎΠΉ, Π° Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ ΠΏΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°ΠΌ

НазначСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ объявлСниСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ОбъявлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ объявлСниСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

ОбъявлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Β«ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡΒ» Π½Π°Π΄ объявлСниСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π½ΠΎ Π½Π΅ Π½Π°Π΄ ΠΈΡ… назначСниями.

НазначСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π΄ объявлСниСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ОбъявлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π°Π΄ объявлСниСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Π”Π°ΠΆΠ΅ Ссли ΠΌΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ объявлСний, JavaScript Π΄Π²ΠΈΠΆΠΎΠΊ всС Ρ€Π°Π²Π½ΠΎ Π±Ρ‹ взял double Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

Last updated

Was this helpful?