ამაღლებულია კლასები JavaScript-ში?
ამაღლებულია კლასები JavaScript-ში?

ვიდეო: ამაღლებულია კლასები JavaScript-ში?

ვიდეო: ამაღლებულია კლასები JavaScript-ში?
ვიდეო: CASIO FX-991MS FX-570MS FX-100MS learn everything 2024, ნოემბერი
Anonim

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

გარდა ამისა, რა არის JavaScript კლასი?

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

ანალოგიურად, რა არის აწევა JavaScript-ში მაგალითად? ამწევი არის JavaScript თარჯიმნის მოქმედება ყველა ცვლადისა და ფუნქციის დეკლარაციის გადატანის შესახებ მიმდინარე მასშტაბის ზედა ნაწილში. (function() { var foo; var bar; var baz; foo = 1; alert(foo + " " + bar + " " + baz); bar = 2; baz = 3; })(); ახლა გასაგებია, რატომაც მეორე მაგალითი არ შექმნა გამონაკლისი.

აქედან გამომდინარე, არის კლასობრივი გამონათქვამები?

ამწე კლასის გამონათქვამები ისევე როგორც ფუნქცია გამონათქვამები , კლასის გამონათქვამები ასევე არ არიან აღმართული.

აწეულია let და Const?

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

გირჩევთ: