Π·Π°Π΄Π°Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ javascript
ΠΠ°Π΄Π°ΡΠΈ ΠΏΠΎ JavaScript Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΠΎΡ Tproger ΠΈ GeekBrains
ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ
ΠΠ°Π΄Π°ΡΠΈ ΠΏΠΎ JavaScript Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΠΎΡ Tproger ΠΈ GeekBrains
ΠΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΊΡΠ»ΡΡΠ΅ΡΠΎΠΌ ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ GeekUniversity ΡΠΎΠ±ΡΠ°Π»ΠΈ Π΄Π»Ρ Π²Π°Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΡΡ Π·Π°Π΄Π°Ρ ΠΏΠΎ JavaScript Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΠ΅Π½ΠΈΡΠΎΠ²ΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ°ΡΡ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ². ΠΠ°Π΄Π°ΡΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Ρ Π»ΡΠ±ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠ΅ΡΠ΅Π½ΠΈΡ. Π§ΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ Π½Π°ΠΌΠΈ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅.
ΠΠ°Π΄Π°ΡΠ° 1
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΡΡΠΌΠΌΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΠΊΠΎΡΠ½Π΅ΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΡΡΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΠ΅ΡΠΎΠ΄ reduceRight() ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΊ Π°ΠΊΠΊΡΠΌΡΠ»ΡΡΠΎΡΡ ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° (ΡΠΏΡΠ°Π²Π° Π½Π°Π»Π΅Π²ΠΎ), ΡΠ²ΠΎΠ΄Ρ Π΅Π³ΠΎ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π ΠΌΠ΅ΡΠΎΠ΄ reduce() Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ callback ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΡΡΠΎΡ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°Ρ ΡΠ΅ΡΡΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°:
ΠΠ°Π΄Π°ΡΠ° 2
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΈΡΠ΅Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΡΠΈΡΠ»ΠΎ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅, Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π΄Π΅Π»ΠΈΡΡΡ ΠΈΠ»ΠΈ Π½Π΅ Π΄Π΅Π»ΠΈΡΡΡ Ρ ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π±Π΅Π· ΠΎΡΡΠ°ΡΠΊΠ° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
ΠΠ°Π΄Π°ΡΠ° 3
ΠΠΏΠΈΡΠΈΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΠ΅ΡΠΌΡ ΠΆΠΈΠ²ΠΎΡΠ½ΡΡ ΠΈ Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅Π»Π°Π΅Ρ ΠΏΠΎΠ΄ΡΡΡΡ Π²ΡΠ΅Ρ Π²ΠΎΠ·ΡΠ°ΡΡΠΎΠ² ΠΆΠΈΠ²ΠΎΡΠ½ΡΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΎΠ±ΡΠΈΠΉ Π²ΠΎΠ·ΡΠ°ΡΡ Π΄Π»Ρ Π²ΡΠ΅ΠΉ ΡΠ΅ΡΠΌΡ.
ΠΠ°Π΄Π°ΡΠ° 4
ΠΠ΅ΡΠ΅ΠΏΠΈΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ clone ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° Π±ΡΠ»Π° ΡΠΏΠΎΡΠΎΠ±Π½Π° ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ.
Deep copy (Π³Π»ΡΠ±ΠΎΠΊΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅)
Experimental deep copy (ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅)
ΠΠ°ΠΊ ΠΏΠΈΡΡΡ Π½Π° Stack Overflow, HTML-ΡΡΠ°Π½Π΄Π°ΡΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΈΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠ½ Π²ΡΡ Π΅ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ, Π½ΠΎ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡΠ΅ΠΌ ΡΠΈΠΏΠ°ΠΌ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π² JSON, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Dates, RegExps, Maps, Sets, Blobs, FileLists, ImageDatas, Sparse Arrays, Typed Arrays ΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π±ΠΎΠ»ΡΡΠ΅ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. Π Π΅ΡΠ°Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΈΠΊΠ»ΠΈΡΠ½ΡΡ ΠΈ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΡΡΡΡΠΊΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΠΎΠΌΠ°ΡΡ JSON.
Shallow copy (ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠ½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅)
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ, Π½ΡΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΡΠΌ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ.
ΠΠ°Π΄Π°ΡΠ° 5
ΠΠ°ΠΊ ΠΏΠΈΡΡΡ Π½Π° MDN web docs, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΌΠ΅ΡΠΊΠΈ (label) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ break ΠΈΠ»ΠΈ continue Π΄Π»Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΠΈΠΊΠ»Π°. ΠΠ΅ΡΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π±Π»ΠΎΡΠ½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΠ»ΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ.
ΠΠ°Π΄Π°ΡΠ° 6
Π―Π±Π»ΠΎΠΊΠΎ ΡΡΠΎΠΈΡ 1.15, Π°ΠΏΠ΅Π»ΡΡΠΈΠ½ ΡΡΠΎΠΈΡ 2.30. Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΈ ΡΡΠΎΡΡ Π²ΠΌΠ΅ΡΡΠ΅ β ΡΠ΅ΠΌΡ ΡΠ°Π²Π½Π° ΡΡΠΌΠΌΠ° 1.15 + 2.30 Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ JavaScript?
Π§ΠΈΡΠ»ΠΎ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅, ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΠΈΡ β Π΅Π΄ΠΈΠ½ΠΈΡ ΠΈ Π½ΡΠ»Π΅ΠΉ. ΠΠΎ Π΄ΡΠΎΠ±ΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ 1.15, 2.30, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ³Π»ΡΠ΄ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π² Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡΡΡΡ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ Π΄ΡΠΎΠ±ΡΡ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅. ΠΡΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ Π²Π·ΡΡΠΎ Ρ ΡΠ°ΠΉΡΠ° Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ΅Π±Π½ΠΈΠΊ JavaScript, ΡΠ°ΠΌ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΏΡΠΎ ΡΠΈΡΠ»Π° Π² ΡΠ·ΡΠΊΠ΅.
ΠΠ°Π΄Π°ΡΠ° 7
Π₯ΠΎΡΠΈΡΠ΅ Π²ΡΡΠ°ΡΡΠΈ ΠΎΡ Π½ΠΎΠ²ΠΈΡΠΊΠ° Π΄ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»Π°? Π€Π°ΠΊΡΠ»ΡΡΠ΅Ρ ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ GeekUniversity Π΄Π°ΡΡ ΠΏΠΎΠ»ΡΠΎΡΠ° Π³ΠΎΠ΄Π° ΠΎΠΏΡΡΠ° Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅Π·ΡΠΌΠ΅. ΠΠ±ΡΡΠ°ΠΉΡΠ΅ΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°Π΄Π°Π½ΠΈΡΡ , ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΎΡΠ²ΠΎΠΉΡΠ΅ ΡΡΠ»ΡΡΠ΅ΠΊ-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΈ ΡΡΠ°Π½ΡΡΠ΅ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΈ ΠΌΠ΅ΡΡΡ.
JavaScript Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ²ΠΎΠΈ Π½Π°Π²ΡΠΊΠΈ JavaScript Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠΉ Schoolsw3.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠΉ Π½Π° JavaScript (Ρ ΠΎΡΠ²Π΅ΡΠ°ΠΌΠΈ) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Π»Π°Π²Ρ JavaScript.
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ΅ΡΠΈΡΡ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅, ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π² ΠΊΠΎΠ΄, ΠΈΠ»ΠΈ ΠΏΠΎcΠΌΠΎΡΡΠ΅ΡΡ ΠΎΡΠ²Π΅Ρ, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π½Π΅ ΡΠ°ΠΊ.
ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΡΡΠ΅Ρ
ΠΡ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ 1 Π±Π°Π»Π» Π·Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ. ΠΠ°Ρ ΡΡΠ΅Ρ ΠΈ ΠΎΠ±ΡΠΈΠΉ ΡΡΠ΅Ρ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ.
ΠΠ°ΡΠ°ΡΡ ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ JavaScript
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ JavaScript, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²Π°ΠΌ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π£ΡΠ΅Π±Π½ΠΈΠΊ JavaScript Ρ Π½ΡΠ»Ρ.
ΠΠ½Π»Π°ΠΉΠ½ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Schoolsw3
ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ, ΡΠ΅ΠΌΡΡ ΠΈ ΠΊΠ°ΡΡΠ΅ΡΡ.
Π£ΠΆΠ΅ Π²ΡΠ΄Π°Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ 25 000 ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ²!
HTML Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ HTML.
CSS Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ CSS.
JavaScript Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ JavaScript ΠΈ HTML DOM.
Python Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ Python.
jQuery Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ jQuery.
SQL Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ SQL.
PHP Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ PHP ΠΈ MySQL.
XML Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ XML, XML DOM ΠΈ XSLT.
Bootstrap Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ the Bootstrap framework.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
Π’Π΅ΡΡΡ
ΠΠΠ Π‘ΠΠΠΠΠ’Π¬
ΠΠΠΠΠΠΠ’Π¬Π‘Π―
Π‘ΠΠ Π’ΠΠ€ΠΠΠΠ’Π«
Π‘ΠΎΠΎΠ±ΡΠΈΡΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠΈΡΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ, ΠΏΡΠΈΡΡΠ»Π°ΠΉΡΠ΅ Π½Π°ΠΌ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠ΅ ΠΏΠΈΡΡΠΌΠΎ:
ΠΠ°ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅:
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, Π·Π° Π²Π°ΡΡ ΠΏΠΎΠΌΠΎΡΡ!
ΠΠ°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² SchoolsW3.
Π’ΠΎΠΏ Π£ΡΠ΅Π±Π½ΠΈΠΊΠΈ
Π’ΠΎΠΏ Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠΈ
Π’ΠΎΠΏ ΠΡΠΈΠΌΠ΅ΡΡ
ΠΠ΅Π± Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ
ΠΠ°Π΄Π°Π½ΠΈΡ ΠΏΠΎ JS Π΄Π»Ρ ΠΏΡΠΎΠΊΠ°ΡΠΊΠΈ
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ
ΠΠ°Π·ΠΎΠ²ΡΠ΅
ΠΠ°ΡΡΠΈΠ²Ρ
ΠΠ±ΡΠ΅ΠΊΡΡ
Π£ Π½Π°Ρ Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ρ ΡΠ°Π½ΡΡΡΡ Π·Π°ΡΠΏΠ»Π°ΡΡ Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΡΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Ρ
Π·Π°ΡΠΏΠ»Π°Ρ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ sum. ΠΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ 390.
ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ salaries ΠΏΡΡΡ, ΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ 0.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ multiplyNumeric(obj), ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΌΠ½ΠΎΠΆΠ°Π΅Ρ Π²ΡΠ΅ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° obj Π½Π° 2.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ multiplyNumeric Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ. Π‘Π»Π΅Π΄ΡΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ.
P.S. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ typeof Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ΅.
Π Π°Π±ΠΎΡΠ° c DOM
Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΡΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΡΡΡ
ΠΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π Π΅Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ TODO-Π»ΠΈΡΡ. ΠΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΡ ΡΡΡ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅: Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡΡΡΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π² TODO Π»ΠΈΡΡ. ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Π΄ΠΎΠ±Π°Π²Π»Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π°Π΄Π°Π½ΠΈΡ Π² ΠΎΠ±ΡΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² Π΄Π΅Π». ΠΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠΊΠ½ΡΡΡ ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ΄Π°Π»ΠΈΡΡ (ΠΌΠΎΠΆΠ½ΠΎ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΡΠ²Π΅ΡΡΠΈ)
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΎΠ²ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ (Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ΅ΠΊΠ±ΠΎΠΊΡ ΡΡΠ΄ΠΎΠΌ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ) ΠΈ Π΅ΡΠ»ΠΈ Ρ ΠΎΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π²ΡΠ±ΡΠ°Π½, ΡΠΎ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ: «Π‘Π΄Π΅Π»Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΌ» ΠΈ «ΡΠ΄Π°Π»ΠΈΡΡ». Π‘ΠΎΠΎΡΠ²Π΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½, ΡΠ°ΠΊ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΠ±ΠΎΠΊΡΠΎΠ² ΠΈ Π²ΡΠ΅ ΠΎΡΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΌΠΈ.
ΠΠ°Π»Π΅Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ «ΠΡΠ±ΡΠ°ΡΡ Π²ΡΠ΅», ΠΏΡΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° Π½Π΅Π΅ ΠΌΡ ΠΏΡΠΎΡΡΠ°Π²Π»Π΅ΠΌ Π½Π° Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΡΠ±ΡΠ°Π½Ρ
Π‘Π»Π°ΠΉΠ΄Π΅Ρ
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠ»Π°ΠΉΠ΄Π΅Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. Π‘Π»Π°ΠΉΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ:
ΠΠ°Π΄Π°Π½ΠΈΠ΅ Π½Π° Π΄ΠΆΡΠ½Π°
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ»Π°ΡΡΠΎΠ² Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ.
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»
ΠΠ»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΡΡΡΡ HTML ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ : ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠΎΠΉ. ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΎΠ½ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ ΡΡΡΠΎΠΈΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ°.
Π€ΠΎΡΠΌΠ°Ρ Π΄Π°Π½Π½ΡΡ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ°
Π‘Π΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ JSON-ΠΌΠ°ΡΡΠΈΠ² Π΄Π°Π½Π½ΡΡ . ΠΡΠΈΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ :
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΡ
Π‘Ρ Π΅ΠΌΠ° Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
ΠΠ΄Π΅ JavaScript Π΄ΠΆΡΠ½Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ?
JavaScript Π΄ΠΆΡΠ½Ρ, ΠΊΠ°ΠΊ ΠΈ Π»ΡΠ±ΠΎΠΌΡ Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡΠ°ΡΠΈΠ²Π°ΡΡ Π½Π°Π²ΡΠΊΠΈ. ΠΡ ΡΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΡ ΡΠ΅ΡΡΡΡΠΎΠ² Ρ ΡΠΉΠΌΠΎΠΉ ΡΠ΅ΡΡΠΎΠ²ΡΡ Π·Π°Π΄Π°Π½ΠΈΠΉ.
ΠΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: Π½ΠΎΠ²ΠΈΡΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΊΠΎΠ»Ρ ΡΠ³ΠΎΠ΄Π½ΠΎ ΡΡΡΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΎΡΠΈΡ, Π½ΠΎ Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Π±Π΅Π΄Π°. ΠΠ°ΡΠ°ΡΡΡΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅Π³Π΄Π΅ Π±ΡΠ°ΡΡ Π·Π°Π΄Π°Π½ΠΈΡ. Π ΠΠ£ΠΠ΅ ΠΈΠ»ΠΈ Π½Π° ΠΊΡΡΡΠ°Ρ ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»ΠΈ Π·Π°ΡΡΠΏΠ°ΡΡ Π΄ΠΎΠΌΠ°ΡΠΊΠ°ΠΌΠΈ, Π½ΠΎ Π²ΠΎΡ Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠΎΠΈΡΠΊΠΎΠΌ Π²ΡΠ΅ Π½Π΅ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ. ΠΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π»ΠΈΠ±ΠΎ ΠΈΡΠΊΠ°ΡΡ ΡΠΆΠ΅ ΡΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡΠΎΡΠΈΠ², Π½Π΅ΡΠ΅ΡΠ°Π΅ΠΌΡΠ΅ Π·Π°Π΄Π°ΡΠΊΠΈ Π½Π° Stack Overflow, Π»ΠΈΠ±ΠΎ ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°ΡΡ ΡΠ°ΠΌΠΎΠΌΡ.
ΠΠ°ΡΠ° ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π² ΡΡΠΎΠΌ ΠΏΠ»Π°Π½Π΅ JavaScript Π΄ΠΆΡΠ½Ρ, Π²Π΅Π΄Ρ Π·Π΄Π΅ΡΡ ΠΌΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ ΡΠ΅ΡΡΡΡΡ Ρ Π³ΠΎΡΠΎΠ²ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ Π½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ React, Redux, React-Router + ΡΠ°Π·Π±ΠΎΡ
ΠΠ²ΡΠΎΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ» ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΡΠ°Π·Π±ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π’Π.
Π£ΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Redux Async Actions
ΠΡΠΎΡΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΈΠ· ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ. ΠΠ³ΠΎ ΡΠ΅Π»Ρ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π½Π°Π½ΠΈΠΉ Redux/React/React-Router. Π Π°Π±ΠΎΡΠ° Ρ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°.
Π Π°ΡΠΏΠΈΡΠ°Π½ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π±ΡΠΊΡΠ½Π΄ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ.
ΠΠ°Π΄Π°ΡΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ·ΡΠΊΠ° JavaScript
ΠΠ°Π·ΠΈΡ? ΠΠ°. ΠΠΎ Π½ΡΠΆΠ½ΠΎ Π²Π΅Π΄Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΈΠ»ΠΈ Π±ΡΠ΄ΡΡΠ΅ΠΌΡ JavaScript Π΄ΠΆΡΠ½Ρ ΠΊΠ°ΠΊ-ΡΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΡΡΡ Π² Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΡΡΡ ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΡΠ»ΠΎΠΆΠ½Π΅Π΅. ΠΡΠ»ΠΈΡΠ½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ «Π½Π°Π±ΠΈΡΡ ΡΡΠΊΡ». Π Π·Π°Π΄Π°Π½ΠΈΡΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΡΡΠ°Π·Ρ ΡΠΆΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, Π½Π΅ ΡΠΏΠ΅ΡΠΈΡΠ΅ ΠΎΠΏΡΡΠΊΠ°ΡΡ Π²Π·Π³Π»ΡΠ΄ Π½ΠΈΠΆΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ.
ΠΠ°Π΄Π°ΡΠΈ ΠΏΠΎ JavaScript
ΠΠ°Π½Π½ΡΠΉ ΡΠ΅ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ Π½Π° Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ². Π’Π΅, ΠΊΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅Ρ ΡΠΊΡΡΠ½ΠΎΠΌΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌΡ ΡΠΎΡΠΌΠ°ΡΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ ΡΡΠ΄, ΠΏΠΎΠΏΠ°Π»ΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ. ΠΡΠ΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎ. ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ ΠΈ ΠΎΡΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ Π½Π°Π²ΡΠΊΠΈ, ΡΡΠΎΡ ΡΠ°ΠΉΡ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ ΠΊΠ°ΠΊ Π½Π΅Π»ΡΠ·Ρ Π»ΡΡΡΠ΅.
Middle JavaScript Developer
Π Π²ΠΎΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ»ΠΎΠΆΠ½Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°ΡΡΡΠΈΡΠ°Π½ΠΎ Π½Π° Middle. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΡΡΠ°ΡΡ ΡΠ²ΠΎΠΈ ΡΠΈΠ»Ρ. ΠΠ° ΡΠ°ΠΉΡΠ΅ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ CSSSR ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΎ 3 Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠ΅ΠΉΡΠ°, ΡΠ΄Π΅Π»Π°Π² ΠΊΠΎΡΠΎΡΡΠ΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΌΠ΅Π»ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ΅Π±Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΌ Π΄ΠΆΡΠ½ΠΎΠΌ ΠΈΠ»ΠΈ ΠΌΠΈΠ΄Π»ΠΎΠΌ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ CodePen, JSFiddle ΠΈ Plunker.
«Π’ΡΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ Π³ΠΎΠ΄Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ»
ΠΡΠΎΡΡΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ²Π°ΡΠΊΡΠΈΠΏΡ
ΠΡΠ΅ ΠΎΠ΄Π½Π° Π½Π΅ΠΏΠ»ΠΎΡ Π°Ρ Π½Π°Ρ ΠΎΠ΄ΠΊΠ° Π½Π° GitHub. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠ²Π°ΡΡΡΡ, Π½ΠΎ ΠΈ ΡΠ·Π½Π°ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅. Π Π½Π°ΡΠ°Π»Π΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ΅Π±Π½ΠΈΠΊ Javascript, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π½ΠΎΠ²ΠΈΡΠΊΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅Ρ Π½ΡΠ°Π½ΡΠ°Ρ ΠΈ Π·Π°ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ.
Π’Π΅ΡΡΡ
ΠΠ΅Π· Π½ΠΈΡ ΡΠΎΠΆΠ΅ Π½Π΅ ΠΎΠ±ΠΎΡΠ»ΠΎΡΡ, Π²Π΅Π΄Ρ ΡΡΠΎ Π°Π»ΡΡΠ° ΠΈ ΠΎΠΌΠ΅Π³Π° Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ. Π§Π°ΡΡΠΎ ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½Ρ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ° Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Ρ ΠΎΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ, Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΊΡ. Π’Π°ΠΊ ΡΡΠΎ ΠΏΠΎ ΡΡΡΠΈ ΡΡΠΎ Π²ΡΠ΅ ΡΠ΅ ΠΆΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π½ΠΎ Ρ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ.
Π‘Π±ΠΎΡΠ½Π°Ρ ΡΠΎΠ»ΡΠ½ΠΊΠ°
Π₯ΠΎΡΠΎΡΠΈΠ΅ ΠΎΡΠ²Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠΎΠ΄ ΡΡΠΈΠΌ Π²ΠΎΠΏΡΠΎΡΠΎΠΌ. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅, ΡΡΠΎ ΠΌΡ ΡΠΆΠ΅ ΡΡΠΏΠ΅Π»ΠΈ ΡΠΎΠ±ΡΠ°ΡΡ Π½Π΅ΠΌΠ°Π»ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π² ΡΠ°ΠΊΠΈΡ ΡΡΠ°ΡΡΡΡ , ΠΊΠ°ΠΊ 27 ΡΠ°ΠΉΡΠΎΠ² Ρ Π·Π°Π΄Π°ΡΠΊΠ°ΠΌΠΈ Π΄Π»Ρ ΠΎΡΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ Π½Π°Π²ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π‘ΠΏΠΎΡΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ 5 ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ. ΠΡΠ»ΠΈ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΡΡΠ΄Π° Π½Π΅ Π·Π°Π³Π»ΡΠ½ΡΠ»ΠΈ, ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ π
ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, Π½Π°ΡΠ° ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ°ΠΉΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ Π·Π°ΡΡΠΎΠ½ΡΡΡ Π² ΡΡΠ°ΡΡΠ΅, Π½ΠΎ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ΠΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ ΡΠ΅ΠΌΠ΅:
codedokode / js-task-1.md
ΠΡΠΎΡΡΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ²Π°ΡΠΊΡΠΈΠΏΡ
Π‘ΡΠ°Π·Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΏΡΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΡΠ²Π°ΡΠΊΡΠΈΠΏΡΠ°, ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ (ΠΈΠ»ΠΈ ΠΌΠ°Π»ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ) Π² ΡΡΠ΅Π±Π½ΠΈΠΊΠ°Ρ , Π½ΠΎ ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠΈΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ:
Π Π΅ΡΠ΅: ΡΠ·ΡΠΊ Π―Π²Π° (Java) Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ²Π°ΡΠΊΡΠΈΠΏΡΡ, ΠΏΠΎΡ ΠΎΠΆΠΈ Π² Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ°ΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°.
Π Π½ΠΎΠ²ΠΎΠΌ Javascript Π΅ΡΡΡ ΡΡΡΠΎΠ³ΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ:
Π Π½Π΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΎΡΠ°Π»ΠΈΡΡ, ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΠ°ΡΠ°Π»ΡΠ½ΡΠΌΠΈ. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉ ΡΡΠΎΡ ΡΠ΅ΠΆΠΈΠΌ ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ.
Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊ Π½Π°Π±ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΠΎΡΠΎΠΌΡ Π²ΠΈΠ΄ΠΈΡ Π΅Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅:
Π’ΠΎ Π΅ΡΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΈΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅.
ΠΠ½Π΅ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ. ΠΠΎΠ΄, Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΉΡΡ Π²Π½Π΅ ΡΡΠ½ΠΊΡΠΈΠΉ, Π² Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅, Π½Π΅ Π²ΠΈΠ΄ΠΈΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ (Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅) ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
ΠΠΎΡΡΠ΄ΠΎΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ (ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π· var) ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΡΠΈ Π²Ρ ΠΎΠ΄Π΅ Π² ΡΡΠ½ΠΊΡΠΈΡ, Π΄ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΅Π΅ ΠΊΠΎΠ΄Π°. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠΌ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ undefined:
ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ°ΠΊ:
ΠΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅
ΠΠ±ΡΠ΅ΠΊΡΡ (Π° ΡΡΠΎ Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠ°ΡΡΠΈΠ²Ρ (Array), ΡΡΠ½ΠΊΡΠΈΠΈ (Function), ΡΠ΅Π³ΡΠ»ΡΡΠΊΠΈ (RegExp), Π΄Π°ΡΡ (Date)) ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π²/ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅:
ΠΠ±ΡΠ΅ΠΊΡΡ (Π° Π·Π½Π°ΡΠΈΡ ΠΈ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠΎΠΆΠ΅ ΠΈΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ) ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΠΈ, ΡΠΎ Π΅ΡΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΡΡΠΎ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ:
ΠΠΎΠΆΠ½ΡΠ΅ ΠΈ ΠΏΡΠ°Π²Π΄ΠΈΠ²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π£ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ (ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ = Π½Π΅-ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠΎ Π΅ΡΡΡ ΡΠΈΡΠ»Π°, ΡΡΡΠΎΠΊΠΈ, true / false / null / undefined ) Π½Π΅Ρ ΡΠ²ΠΎΠΉΡΡΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² (ΠΎΠ½ΠΈ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²). ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌ/ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΎΠ² ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π±ΠΎΠΊΡΠΈΠ½Π³: ΡΠ²Π°ΡΠΊΡΠΈΠΏΡ ΡΠΎΠ·Π΄Π°Π΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ· ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π° ΠΈ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ Π½Π΅ΠΌΡ (ΡΠ°ΠΌ ΠΏΡΠΈΠΌΠΈΡΠΈΠ² ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΡΠΌ). ΠΠ»Ρ ΡΠΈΡΠ΅Π» ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ Β«ΠΊΠ»Π°ΡΡΠ°Β» Number, Π΄Π»Ρ true / false Boolean, Π΄Π»Ρ ΡΡΡΠΎΠΊ β String (Π²ΠΎΡ ΠΌΡ ΠΈ ΡΠ·Π½Π°Π»ΠΈ, Π·Π°ΡΠ΅ΠΌ Π±ΡΠ»ΠΈ Π½ΡΠΆΠ½Ρ ΡΡΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ). ΠΠ»Ρ null ΠΈ undefined Π²ΡΠ΄Π°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°. Π’ΠΎ Π΅ΡΡΡ ΠΊΠΎΠ΄
ΠΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²Π½ΡΡΡΠΈ Π²:
ΠΠΎΡΠΎΠΌΡ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Ρ ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΠΎΠ½ΠΎ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡΡ β Π²Π΅Π΄Ρ ΠΎΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΎΡΡ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅.
ΠΡΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ, Π΅ΡΠ»ΠΈ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Ρ ΡΡΠ΅ΡΠΎΠΌ Π±ΠΎΠΊΡΠΈΠ½Π³Π°:
ΠΠΎΠΊΡΠΈΠ½Π³ ΡΠ΄Π΅Π»Π°Π½ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Ρ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ·ΡΠ²Π°Ρ Ρ Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Ρ. Π‘Π°ΠΌΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Ρ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ: Π΅ΡΠ»ΠΈ Π±Ρ ΡΠΈΡΠ»Π° ΠΈ ΡΡΡΠΎΠΊΠΈ Π±ΡΠ»ΠΈ Π½Π°ΡΡΠΎΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ, Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π±Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅. ΠΡΠ»ΠΈ ΡΠ΅Π±Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ (100% ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ), ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΠΎΠΊΡΠΈΠ½Π³ ΠΈ Π°Π½Π±ΠΎΠΊΡΠΈΠ½Π³ Π²ΡΡΡΠ½ΡΡ:
ΠΡΠΎΠ²Π΅ΡΡΠ»ΠΊΠ° Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΡΡ 10 Π·Π°Π΄Π°ΡΠ΅ΠΊ ΠΎΡ @dkab: http://dkab.github.io/jasmine-tests/ (ΡΠΎΠ±ΠΎΡ Π½Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π΅Π½ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΈΠ±Π°ΡΡΡΡ. ΠΡΠ»ΠΈ ΡΡ Π΄ΡΠΌΠ°Π΅ΡΡ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΠΏΡΠ°Π², Π½Π°ΠΏΠΈΡΠΈ Π½Π° codedokode@gmail.com ΠΈ Π½Π΅ Π·Π°Π±ΡΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ β ΠΌΡ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ ΠΈ Π²ΠΏΡΠ°Π²ΠΈΠΌ Π΅ΠΌΡ ΠΌΠΎΠ·Π³ΠΈ).
Π’Π°ΠΊΠΆΠ΅, Π½ΡΠΆΠ½Π° ΡΡΠ½ΠΊΡΠΈΡ take(gen, x) ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ·Π²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ gen Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ( x ) ΡΠ°Π· ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ Π²ΡΠ·ΠΎΠ²ΠΎΠ². ΠΠ½Π° Π½Π°ΠΌ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ:
ΠΠ±ΡΠ°ΡΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ Π΅ΠΉ ΠΌΠ°ΡΡΠΈΠ²:
ΠΡΠΎ Π°Π½Π°Π»ΠΎΠ³ array_map ΠΈΠ· PHP.
Π, Π΅ΡΠ΅, ΡΠ΄Π΅Π»Π°ΠΉ ΡΠΎΠ³Π΄Π°, ΡΡΠΎΠ±Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ gen ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΈ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅
Π§Π°ΡΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ (partial application)
ΠΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ:
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ partial ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· Π½Π΅Π΅ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π°Π΄Π°Π² Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΈΠ· Π½ΠΈΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎΡΠΈΠ»Π΅Π½ Π²ΡΠ·ΠΎΠ²Ρ:
ΠΡΡΠ°ΡΠΈ, ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡΡ JS ΠΌΠ΅ΡΠΎΠ΄ bind() ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: http://frontender.info/partial-application-in-javascript-using-bind/ ΠΠΎ ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π±Π΅Π· Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄.
Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄: http://lodash.com/docs#bind
Π’Π°ΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π±ΡΠ»Π° Π² lodash: http://lodash.com/docs#pluck Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Π΅ ΡΠΎΠ²Π΅ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ map: https://lodash.com/docs/4.15.0#map
Π€ΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².
Π€ΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:
ΠΠ°ΠΏΠΈΡΠΈ ΡΡΠ½ΠΊΡΠΈΡ, ΡΡΠΈΡΠ°ΡΡΡΡ ΡΠΈΡΠ»ΠΎ ΡΠ²ΠΎΠΉΡΡΠ² Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ΅:
ΠΠΎΠΆΠ΅ΡΡ Π²Π·ΡΡΡ ΠΎΡΡΡΠ΄Π° ΠΏΠ΅ΡΠ²ΡΠ΅ 5-10 Π³ΠΎΡΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π² ΠΊΠΎΠ΄. ΠΠΎΡΠΎΠ΄Π° Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΠ΄ΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΠ°ΠΏΠΈΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ±Π΅ΡΠ΅Ρ ΠΈ Π²ΡΠ²Π΅Π΄Π΅Ρ N ΡΠ°ΠΌΡΡ Π½Π°ΡΠ΅Π»Π΅Π½Π½ΡΡ Π³ΠΎΡΠΎΠ΄ΠΎΠ² ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΆΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΠ΅ΠΊΠ°Ρ ΡΠ΅ΡΡ ΡΠ°ΡΡΡΡΠ΄ΠΎΠ² ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΈΠ΄ΠΎΠ² Π³Π°ΠΌΠ±ΡΡΠ³Π΅ΡΠΎΠ²:
ΠΠ°ΠΌΠ±ΡΡΠ³Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²ΠΈΠ΄ΠΎΠ² Π½Π°ΡΠΈΠ½ΠΎΠΊ (ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ):
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π³Π°ΠΌΠ±ΡΡΠ³Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠΏΠ°ΡΡ ΠΏΡΠΈΠΏΡΠ°Π²ΠΎΠΉ (+ 15 ΡΡΠ³ΡΠΈΠΊΠΎΠ², 0 ΠΊΠ°Π»ΠΎΡΠΈΠΉ) ΠΈ ΠΏΠΎΠ»ΠΈΡΡ ΠΌΠ°ΠΉΠΎΠ½Π΅Π·ΠΎΠΌ (+ 20 ΡΡΠ³ΡΠΈΠΊΠΎΠ², + 5 ΠΊΠ°Π»ΠΎΡΠΈΠΉ). ΠΠ°ΠΏΠΈΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ°ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΈ ΠΊΠ°Π»ΠΎΡΠΈΠΉΠ½ΠΎΡΡΡ Π³Π°ΠΌΠ±ΡΡΠ³Π΅ΡΠ°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉ ΠΠΠ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ (ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°: Π½ΡΠΆΠ΅Π½ ΠΊΠ»Π°ΡΡ ΠΠ°ΠΌΠ±ΡΡΠ³Π΅Ρ, ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΠΎΠΏΡΠΈΠΉ ΠΈ ΡΠ°ΡΡΡΠ΅ΡΠ° Π½ΡΠΆΠ½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½).
ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π·Π°ΡΠΈΡΠ΅Π½ ΠΎΡ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΡΠ΅Π΄ΡΡΠ°Π²Ρ, ΡΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ. ΠΡΠ»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΈΠΏ Π³Π°ΠΌΠ±ΡΡΠ³Π΅ΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π΄ΠΎΠ±Π°Π²ΠΊΠΈ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ (ΠΎΡΠΈΠ±ΠΊΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΌΠΎΠ»ΡΠ° ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡΡΡ).
ΠΠ°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ jsDoc ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ (ΡΠΎ Π΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½ΠΈΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄):
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΡΠ° Π·Π°Π΄Π°ΡΠ° Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, ΠΏΠΎΡΠΎΠΌΡ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΈ ΡΡΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΠΎΡΠ΅ΠΌΡ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΠ²ΠΎΠΈΠΌ Π΄Π΅Π»ΠΎΠΌ, ΠΊΠ»Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΡΠΈΡΡΠ²Π°ΡΡ Π³Π°ΠΌΠ±ΡΡΠ³Π΅Ρ, Π° Π²Π²ΠΎΠ΄ΠΎΠΌ-Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ ΠΏΡΡΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅. ΠΠ½Π°ΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΊΠ°ΡΡ, Π³Π΄Π΅ ΡΠ°Π·Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΌΠ΅ΡΠ°Π½Ρ Π²ΠΌΠ΅ΡΡΠ΅.
Π’ΠΈΠΏΡ Π½Π°ΡΠΈΠ½ΠΎΠΊ, ΡΠ°Π·ΠΌΠ΅ΡΡ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ. ΠΠΈΠΊΠ°ΠΊΠΈΡ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΡΠΎΠΊ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ.
ΠΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ Π³Π°ΠΌΠ±ΡΡΠ³Π΅ΡΠ° ΠΊΠ»Π°ΡΡ Ρ ΡΠ°Π½ΠΈΡ Π²Π½ΡΡΡΠΈ Π² ΡΠ²ΠΎΠΈΡ ΠΏΠΎΠ»ΡΡ . ΠΠΎΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°:
ΠΠ±ΡΠ°ΡΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ Π²ΡΡΠ΅ Π½Π° ΡΠ°ΠΊΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ:
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π²ΠΎΡ Π΅ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΊΠ°ΠΊ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΠΠ. ΠΠΎΠ³Π΄Π° ΡΡ ΡΠ΅ΡΠ°Π΅ΡΡ Π·Π°Π΄Π°ΡΡ Π½Π° ΠΠΠ, ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ:
ΠΡΠ»ΠΈ ΡΡ Π·Π½Π°Π΅ΡΡ ΠΠΠ Π² ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ PHP, Java, Python), Π²ΠΎΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ·ΡΠΊΠ°ΠΌΠΈ ΠΈ JS:
Π ES5 ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. Π ES6 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΎΠ² (Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ), Π½ΠΎ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° Π½Π°ΡΡΠΈΡΡ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ ΠΏΠΎ ΡΡΠ°ΡΠΈΠ½ΠΊΠ΅, Π½Π° ES3, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π²ΡΡΡΠ΅ΡΠΈΡΡΡ Π² 99% Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΠΎΡ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ: http://frontender.info/es6-classes-final/
ΠΠ±ΡΠ°ΡΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² ES6 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π»ΠΈΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΈ Π² ΠΈΡΠΎΠ³Π΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠ° ΠΆΠ΅ ΡΠ°ΠΌΠ°Ρ ΠΈΠΌΠΈΡΠ°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ° ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΡΠΎΡΠΈΠΏΡ. ΠΠΎΡΠΎΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΡΡΠΈΡΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡ Π²ΡΡΡΠ½ΡΡ, Π° ΠΏΠΎΡΠΎΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Π½Π° ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
13. Π ΠΎΠ΄Π½ΠΎΠΌ Π³ΠΎΡΠΎΠ΄Π΅ Π΅ΡΡΡ ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ΅ΡΡ. Π Π½Π΅ΠΉ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ:
ΠΠ°Π½ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠ»Π΅ΠΊΡΡΠΎΡΠ΅ΡΠΈ. ΠΠ°ΠΏΠΈΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ°ΡΡΡΠΈΡΡΠ²ΡΡΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΡΠ²Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΡΠΏΠΈΡΡ (ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄Π°ΡΡ) Π΄Π½Π΅ΠΌ ΠΈ Π½ΠΎΡΡΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π°Π»Π°Π½ΡΠ° ΠΈ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΡΠΎΠΈΡΡ (ΠΈΠ»ΠΈ ΠΏΡΠΈΠ½Π΅ΡΠ΅Ρ ΠΏΡΠΈΠ±ΡΠ»ΠΈ). ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΉ ΠΠΠ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ.
14. Π½Π°ΠΏΠΈΡΠΈ ΡΡΠ½ΠΊΡΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΡΡΠΎΠΊ: ‘undefined’, ‘boolean’ (Π΄Π»Ρ true/false), ‘null’, ‘number’, ‘string’, ‘function’, ‘array’, ‘array-like’, ‘object’
ΠΠ±ΡΡΠ½ΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π°ΠΊ Ρ Object.prototype.toString.call(. ) : https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/toString#Example:_Using_toString_to_detect_object_type (ΠΎΠ±ΡΠ°ΡΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: JS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ call() ΠΈ apply() Π²ΡΠ·Π²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ Π½Π° ΠΏΡΠΎΠΈΠ·ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅, ΠΏΠ΅ΡΠ΅Π΄Π°Π² Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ this ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ).
15. ΠΠ°ΠΏΠΈΡΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠ°ΠΊ ΡΡ Π½Π°Π²Π΅ΡΠ½ΠΎ, Π·Π½Π°Π΅ΡΡ, ΠΏΡΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ) ΠΌΡ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ Π»ΠΈΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ:
Π€ΡΠ½ΠΊΡΠΈΡ Π½Π΅Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²/ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· ΡΡΠ°ΡΠΎΠ³ΠΎ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅:
Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ lodash Π΄Π»Ρ Π½Π΅Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ clone: http://lodash.com/docs#clone
16. ΠΠ°ΠΏΠΈΡΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΏΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°/ΠΌΠ°ΡΡΠΈΠ²Π°, Π½ΠΎ ΠΈ ΠΊΠΎΠΏΠΈΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²/ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². Π’Π°ΠΊΠΆΠ΅, ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Π² JS ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Date
Π Π΅ΡΠ°ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ ΠΏΠΎΡΠΎΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅ ΡΠ°ΠΊΡ ΡΡΠΎ ΡΡ ΡΠΌΠΎΠΆΠ΅ΡΡ ΠΈΡ ΡΠ΅ΡΠΈΡΡ. ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΠΎΡΠ²Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΠΊΠΎΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ lodash:
DOM, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΡΠΎΠΈΠ» ΠΠΆΠ΅ΠΊ
ΠΠ°Π»ΡΡΠ΅ ΠΈΠ΄ΡΡ Π·Π°Π΄Π°Π½ΠΈΡ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ DOM ΠΈ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ. DOM = Document Object Model β ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ HTML-ΡΡΡΠ°Π½ΠΈΡΡ, ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅. ΠΠ±ΡΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ΅Π³Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ·Π΅Π» Π΄Π΅ΡΠ΅Π²Π° DOM. Π£Π·Π»Ρ ΠΎΠ±ΡΠ°Π·ΡΡΡ Π΄Π΅ΡΠ΅Π²ΠΎ, ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ·Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ·Π΅Π», ΡΠΏΠΈΡΠΎΠΊ ΡΠ·Π»ΠΎΠ²-Π΄Π΅ΡΠ΅ΠΉ, ΡΠΎΡΠ΅Π΄Π½ΠΈΠ΅ ΡΠ·Π»Ρ.
CSSOM = CSS Object Model β ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ CSS-ΡΡΠΈΠ»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°Ρ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
Π‘ΠΎΠ±ΡΡΠΈΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ β ΡΡΠΎ ΡΠΎΠ±ΡΡΠΈΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΡΡΠΈ, Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ, ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΡ. Π’Ρ ΠΌΠΎΠΆΠ΅ΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ, ΠΈ ΡΠΊΠ°Π·Π°Π½Π½Π°Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·Π²Π°ΡΡΡΡ Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ.
Π’Π΅ΠΎΡΠΈΡ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ (ΡΠΈΡΠ°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°Ρ):




