⊗jsPmClInr 262 of 505 menu

ჯავასკრიპტის ჩამკეტები

მოდით ახლა შევისწავლოთ ჩამკეტის (closure) ცნება. სინამდვილეში თქვენ უკვე იცნობთ ამ ცნებას, დარჩა მხოლოდ სწორი ტერმინოლოგიის გაგება.

ასე რომ, ჩამკეტი არის ფუნქცია ყველა იმ გარე ცვლადთან ერთად, რომელიც მას ხელმისაწვდომია. ან, სხვა სიტყვებით, ჩამკეტი არის ფუნქცია თავის ლექსიკურ გარემოსთან ერთად.

ჯავასკრიპტში, ყველაზე ხშირად, როდესაც ამბობენ "ფუნქციის ჩამკეტი", გულისხმობენ არა თავად ფუნქციას, არამედ მის გარე ცვლადებს. თუ რომელიმე ფუნქცია იღებს ცვლადს თავისი ლექსიკური გარემოდან, მაშინ ამბობენ "ცვლადი აღებულია ჩამკეტიდან".

გავიხსენოთ კოდი, რომელიც წინა გაკვეთილზე შევქმენით:

function test() { let num = 1; return function() { console.log(num); } } let func = test(); func(); // გამოიტანს 1-ს

ამ შემთხვევაში შეიძლება ითქვას, რომ ფუნქცია func იღებს ცვლადის num მნიშვნელობას ჩამკეტიდან. ასევე შეიძლება ითქვას, რომ ფუნქცია func ინახავს ცვლადის num მნიშვნელობას ჩამკეტში.

ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა