⊗jsPmFTLE 237 of 505 menu

ფუნქციის მარცხნივ გამოსახულება JavaScript-ში

მოდით განვიხილოთ შემდეგი კოდი:

+function func() { console.log('!'); }

როგორც უკვე იცით, ეს ფუნქცია არის ფუნქციური გამოსახულება, მიუხედავად იმისა, რომ მას აქვს სახელი (ჩვენ უკვე გავარკვიეთ, რომ სახელის ქონა საერთოდ არაა კრიტერიუმი). ავიღოთ ეს პლუსი - და მივიღებთ Function Declaration-ს:

function func() { console.log('!'); }

მოდით დავსვათ + ხაზის წინ ფუნქციას - ის ისევ გახდება Function Expression:

+ function func() { console.log('!'); }

ახლა კი პლუსის შემდეგ დავსვათ რიცხვი 1 და მძიმით - ჩვენი ფუნქცია გახდება Function Declaration:

+1; function func() { console.log('!'); }

რატომ არის ასე: იმიტომ, რომ პირველ ხაზზე დაწერილია ერთი დასრულებული ბრძანება, რომელიც დახურულია მძიმით. ამიტომ ეს ბრძანება არანაირად არ მოქმედებს ჩვენს ფუნქციაზე.

სინამდვილეში მძიმის აღება შეიძლება, რადგან JavaScript-ში ის არაა სავალდებულო - ფუნქცია მაინც დარჩება Function Declaration-ად:

+1 function func() { console.log('!'); }

ხოლო თუ 1-ის შემდეგ დავამატებთ კიდევ ერთ პლუსს, მაშინ ფუნქცია გახდება Function Expression:

+1+ function func() { console.log('!'); }

რატომ არის ასე: იმიტომ, რომ პირველ ხაზზე არასრული გამოსახულებაა - დგას პლუსი და მის შემდეგ არაფერი. ამიტომ JavaScript-ის ინტერპრეტატორი ფიქრობს, რომ ეს პლუსი ეხება ქვემოთ მყოფ ხაზს, ანუ ჩვენს ფუნქციას.

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

დაადგინეთ, არის თუ არა წარმოდგენილი ფუნქცია Function Declaration თუ Function Expression:

- function func() { console.log('!'); }

დაადგინეთ, არის თუ არა წარმოდგენილი ფუნქცია Function Declaration თუ Function Expression:

-1; function func() { console.log('!'); }

დაადგინეთ, არის თუ არა წარმოდგენილი ფუნქცია Function Declaration თუ Function Expression:

-1 function func() { console.log('!'); }

დაადგინეთ, არის თუ არა წარმოდგენილი ფუნქცია Function Declaration თუ Function Expression:

1 function func() { console.log('!'); }

დაადგინეთ, არის თუ არა წარმოდგენილი ფუნქცია Function Declaration თუ Function Expression:

-1- function func() { console.log('!'); }
ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა