JavaScript-ის ძირითადი სახელმძღვანელო

ᲞᲠᲝᲒᲠᲐᲛᲘᲠᲝᲑᲘᲡ ᲔᲚᲔᲛᲔᲜᲢᲐᲠᲔᲑᲘ

გაცნობა JavaScript-ის გაშვება პირველი პროგრამა JavaScript-ში პროგრამის კოდის ანალიზი შემდგომი მაგალითები სკრიპტის ფაილები რამდენიმე ფაილი შენიშვნა ფაილების კეშირება სტრიქტული რეჟიმი კომენტარები ცვლადები ცვლადების გამოყენება რამდენიმე ცვლადის გამოცხადება ცვლადების მნიშვნელობების ცვლილება რამდენიმე let ერთი ცვლადისთვის მათემატიკური მოქმედებები რიცხვებთან მათემატიკური მოქმედებები ცვლადებთან მათემატიკური მოქმედებების პრიორიტეტი თანაბარი პრიორიტეტი დამაჯგუფებელი ფრჩხილები წილადები უარყოფითი რიცხვები პლუსი ცვლადების წინ გაყოფის ნაშთი ახარისხება ახარისხების პრიორიტეტი სტრიქონები სტრიქონების მიმატება სტრიქონის სიგრძე შაბლონური სტრიქონები მრავალსტრიქონიანობა სპეციალური მნიშვნელობები მნიშვნელობა undefined მნიშვნელობა null მნიშვნელობები true და false მნიშვნელობა NaN Infinity და -Infinity კონსოლი მონაცემთა ტიპი კონსოლში შეცდომები კონსოლში კონსტანტები ტიპების ავტომატური გარდაქმნა რიცხვად გარდაქმნა რიცხვად მოკლე გარდაქმნა არასწორი რიცხვების გარდაქმნა რიცხვების ამოღება სტრიქონად გარდაქმნა სტრიქონად გარდაქმნის გამოყენება ლოგიკური ტიპის გარდაქმნა ლოგიკურ ტიპად გარდაქმნა სტრიქონის სიმბოლოები სტრიქონების უცვლელობა სტრიქონის ბოლო სიმბოლო ციფრების მქონე სტრიქონები რიცხვის ციფრებთან მიმართვა ოპერაციები ცვლადის შესაცვლელად შემოკლებული ოპერაციები JavaScript-ში ინკრემენტაცია პრეფიქსული და პოსტფიქსული ტიპი არაზუსტი გამოთვლები ფუნქცია prompt ტიპების პრობლემა prompt-ში დოკუმენტში გამოტანა შეცდომების ძიების პრაქტიკა ოპერაციების პრაქტიკა ფორმულების პრაქტიკა

მასივები

შესავალი მასივებში ელემენტების მიღება მასივის სიგრძე ელემენტების შეცვლა მასივის ელემენტების გადაწერა ელემენტების ინკრემენტაცია ელემენტების დამატება გასაღებებით იშვიათი მასივები ელემენტების დამატება push-ის მეშვეობით გასაღებები ცვლადებიდან ოპერატორი delete შეცდომების ძიების პრაქტიკა

ობიექტები

შესავალი ობიექტებში მთელი ობიექტის ჩვენება ობიექტების სტრიქონული გასაღებები ობიექტების თვისებები შეზღუდვები ობიექტების გასაღებებზე ელემენტების შეცვლა ელემენტების დამატება ობიექტების დაუხარისხებლობა ობიექტის გასაღებების მასივი ობიექტის სიგრძე გასაღებები ცვლადებიდან ელემენტზე მიმართების შეცდომა თვისებაზე მიმართების შეცდომა გამოთვლადი თვისებები ოპერატორი in ოპერატორი delete ობიექტების ტიპიზაცია მასივები როგორც ობიექტები განვასხვავებთ მასივებს ობიექტებისგან ობიექტები და პრიმიტივები ობიექტების გადაცემა მითითებით კონსტანტები პროგრამირების კონსტანტებით მიდგომა პრაქტიკა შეცდომების პოვნაზე

პირობები

კონსტრუქცია if-else მეტი და ნაკლები ოპერატორები ტოლობის შემოწმება უტოლობის შემოწმება ცვლადების შედარება სტრიქონების ტოლობა სტრიქონების და რიცხვების ტოლობა ტოლობა მნიშვნელობით და ტიპით უტოლობა მნიშვნელობით და ტიპით ლოგიკური AND (და) ლოგიკური OR (ან) ლოგიკური ოპერატორების პრიორიტეტი პირობების დაჯგუფება ლოგიკური გამონათქვამების ინვერსია პირობები ლოგიკური მნიშვნელობებით მნიშვნელობების შედარება ლოგიკურ ტიპთან ჭეშმარიტების შემოწმების შემოკლებული ფორმა მცდარობის შემოწმების შემოკლებული ფორმა შემოწმების ზოგადი შემოკლებული ფორმა რთული პირობები შემოკლებულ ფორმაში else კონსტრუქციის არასავალდებულო ხასიათი ფიგურული ბრეკეტების არასავალდებულო ხასიათი ბრეკეტების არასავალდებულო ხასიათის პრობლემა კონსტრუქცია else if ჩადგმული if-else კონსტრუქციები კონსტრუქცია switch-case break-ის არასავალდებულო ხასიათი ტერნარული ოპერატორი ლოგიკური ოპერაციები confirm ფუნქცია შეხედულების არეალი შეხედულების არეალის ნიუანსები საათის ნაწილების შემოწმება სტრიქონებისა და მასივების სიგრძის შემოწმება სტრიქონის სიმბოლოების შემოწმება რიცხვის ციფრების შემოწმება გაყოფის ნაშთის შემოწმება პრაქტიკა შეცდომების პოვნაზე პრაქტიკუმი

ციკლები

გაცნობა ციკლი for-of ციკლი for-in ციკლი while ციკლი for ციკლი for მასივებისთვის პირობები ციკლებში რიცხვების ჯამის დაგროვება ელემენტების ჯამის დაგროვება სტრიქონების ფორმირება რიცხვის ციფრები ფიგურული ფრჩხილების არჩევითობა ფრჩხილების არჩევითობის პრობლემა ინსტრუქცია break ინსტრუქცია continue ჩადგმული ციკლები ხილვადობის არე ჩადგმული ციკლები და ხილვადობის არე მასივების შევსება მასივების შეცვლა ობიექტების შევსება ობიექტების შეცვლა მუშაობა დროშებთან რჩევები კოდის წერისთვის რჩევები კოდის დებაგისთვის პრაქტიკა შეცდომების პოვნაზე პრაქტიკა

მრავალგანზომილებიანობა

მრავალგანზომილებიანი მასივები სამგანზომილებიანი მასივი თვითნებური მასივები მრავალგანზომილებიანი მასივების გადარჩევა გადარჩევა ჩვეულებრივი for-ის მეშვეობით მრავალგანზომილებიანი მასივების შევსება პრობლემები მრავალგანზომილებიანი მასივების შევსებისას მრავალგანზომილებიანი მასივების შევსება თანმიმდევრობით მრავალგანზომილებიანი ობიექტები მრავალგანზომილებიანი ობიექტების გადარჩევა მრავალგანზომილებიანი სტრუქტურები მრავალგანზომილებიანი სტრუქტურების გადარჩევა ობიექტების მასივი ცვლადებიდან მიღებული გასაღებები ელემენტების დამატება მასივებში ელემენტების დამატება ობიექტებში

სტანდარტული მეთოდები

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

მომხმარებლის ფუნქციები

გაცნობა ფუნქციის პარამეტრები რამდენიმე პარამეტრი ცვლადი პარამეტრები არასავალდებულო პარამეტრები return ინსტრუქცია ფუნქციების თანმიმდევრული გამოძახება return-ის დახვეწილობა ციკლი და return return-ის გამოყენება ციკლებში return-თან მუშაობის ხერხი ფლაგები ფუნქციებში ლოგიკური ოპერატორები ფუნქციებში წვეულებები ფუნქციებზე შეცდომების პოვნის პრაქტიკა პრაქტიკა ფუნქციებზე

ფუნქციების ცვლადები

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

ფუნქციების ტიპები

ფუნქციის საწყისი კოდი და შედეგი ფუნქცია როგორც ცვლადი ფუნქციის ჩაწერა სხვა ცვლადში ფუნქციების მინიჭება ცვლადებზე ფუნქციის სახელისა და ცვლადის დამთხვევა გამაცხადებელი ტიპები ფუნქციის გამაცხადებლების სხვაობა წერტილი მძიმით ფუნქციის გამაცხადებლებში ფუნქციური გამონათქვამების ნიუანსები ფუნქცია სახელით, მაგრამ Function Expression დასახელებული ფუნქციური გამონათქვამები როგორ შევამოწმოთ ფუნქციის ტიპი გამონათქვამი მარცხნივ გამონათქვამი მარჯვნივ მასივი ფუნქციებით ობიექტი ფუნქციებით ობიექტის ფუნქციებით გამოყენება

ჩადგმული ფუნქციები

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

კლოჟურები

გარე ცვლადებზე წვდომა ფუნქციების ლექსიკური გარემო ლექსიკური გარემოს გამოყენება შესავალი კლოჟურებში მთვლელი კლოჟურებით ნიუანსი ლოკალური ცვლადი ნიუანსი გლობალური ცვლადი

IIFE

ფუნქციის მოხდილ ადგილას გამოძახება ფუნქციის ცვლადისთვის მინიჭება ფუნქციის მოხდილ ადგილას გამოძახების გამოყენება მრგვალი ფრჩხილები პარამეტრები მრავალჯერადი გამოძახებები შესაძლო საფრთხეები უსაფრთხოებისთვის必要 ჩაკეტვები და IIFE

რეკურსია

გაცნობა პარამეტრის მაგალითი მასივის ელემენტების ჯამი რეკურსიაში მრავალგანზომილებიანი სტრუქტურები მასივის ელემენტების ჯამი მანიპულაციები სტრუქტურებთან

გამეორების მეთოდები

მეთოდი map მეთოდი forEach მეთოდი filter მეთოდი every მეთოდი some მეთოდი find თარგმანი, ამოცანები მეთოდი reduce თარგმანი, ამოცანები

ოპერატორი spread

შესავალი უფრო რთული მაგალითები მასივის ექსტრემალური მნიშვნელობები მასივების გაერთიანება სტრიქონების დაყოფა რიცხვების დაყოფა

რესტ ოპერატორი

რესტ ოპერატორი ციფრთა ჯამი მასივები ორგანზომილებიანში მასივები ერთში

დესტრუქტურიზაცია

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

დრო

Date ობიექტთან მუშაობა ფორმატირება თარიღის ფორმატის შეცვლა კვირის დღის მიღება თარიღის სიტყვით გამოტანა დროის დაყენება timestamp ფორმატი სხვაობა timestamp-ებს შორის თარიღების მქონე ობიექტებს შორის სხვაობა თარიღების ავტომატური კორექტირება თვის ბოლო დღის პოვნა ნაკიანი წლის განსაზღვრა კორექტულობის შემოწმება მიმდინარე წლის დღის მიღება შემდეგი ან წინა თვის დღე შემდეგი ან წინა წლის დღე მომენტებს შორის სხვაობა დღის დროის მომენტი დღის დასაწყისი დღის დასასრული დროის მომენტების ციკლური შემოწმება პრაქტიკა დროის მომენტების მიღებაზე სტრიქონული შედარება თარიღის შედარება წლის გარეშე თარიღის დიაპაზონში მოხვედრა თარიღის მქონე ობიექტების შედარება

შესავალი DOM-ში

შესავალი DOM ელემენტები DOM ელემენტების მოძიება DOM ელემენტის რთული სელექტორები ჰენდლერების მიბმა დასახელებული ჰენდლერები ერთი ჰენდლერი რამდენიმე ელემენტზე ერთი მოვლენის რამდენიმე ჰენდლერი სხვადასხვა მოვლენის ჰენდლერები ელემენტის ტექსტი ელემენტის HTML კოდი ატრიბუტები როგორც თვისებები მუშაობა ტექსტურ ველებთან ტექსტური ველის ფოკუსი გამონაკლისი ატრიბუტები მეთოდების და თვისებების ჯაჭვები ჯაჭვების უპირატესობები და ნაკლოვანებები ობიექტი this this-ის უპირატესობა ელემენტების ჯგუფის მოძიება დასახელებული ჰენდლერები ციკლში ანონიმური ჰენდლერები ციკლში მოვლენის ჰენდლერების მოხსნა ჰენდლერების მოხსნა ციკლში ანონიმური ჰენდლერების მოხსნა კოდის წერის რჩევები შეცდომების ძიების პრაქტიკა პრაქტიკუმი

ატრიბუტები

ატრიბუტების მიღების მეთოდი ატრიბუტების დაყენების მეთოდი ატრიბუტების წაშლის მეთოდი ატრიბუტების შემოწმების მეთოდი მომხმარებლის ატრიბუტები დეფისით ატრიბუტების სახელები ატრიბუტებზე მიმართვა მეთოდების მეშვეობით CSS კლასების მასივი CSS კლასების დამატება CSS კლასების წაშლა CSS კლასების შემოწმება CSS კლასების ჩართვა/გამორთვა

სტილიზაცია

სტილიზაცია style ატრიბუტის საშუალებით დეფისით დაწერილი თვისებების სტილიზაცია ელემენტების სტილიზაციის გამონაკლისი CSS კლასების საშუალებით სტილიზაცია CSS კლასებით სტილიზაციის უპირატესობა სტილიზაციის გამოყენება

ძიება

ელემენტების შთამომავლების პოვნა ელემენტების მშობლების პოვნა ელემენტების ყველა მშობლის ძიება ელემენტების მეზობლების ძიება ელემენტის მოძიება id-ით ელემენტის მოძიება ტეგის სახელით ელემენტის მოძიება კლასის სახელით ძიება ელემენტის შიგნით

კვანძები

შესავალი კვანძების ჩამოთვლა ციკლით კვანძების სახელები კვანძების ტიპები კვანძების ტექსტი

ფორმები

ტექსტარეასთან მუშაობა ელემენტების დაბლოკვა ჩეკბოქსებთან მუშაობა მნიშვნელობების გარეშე ატრიბუტების მონაცვლეობა რადიოღილაკებთან მუშაობა change მოვლენა input მოვლენა focus და blur მეთოდები შეცდომების პოვნის პრაქტიკა

ჩამოშლადი სიები

ჩამოშლად სიებთან მუშაობა Value ატრიბუტი ჩამოშლად სიებში სიის არჩეული ელემენტის შეცვლა სიის არჩეული ელემენტის ნომერი ჩამოშლადი სიის ელემენტების მიღება ელემენტები როგორც მასივი ჩამოშლადი სიის ელემენტებთან მუშაობა სიის ელემენტის არჩევა არჩეული ელემენტის მიღება

Event-ის ობიექტი

Event-ის ობიექტთან მუშაობის საფუძვლები ივენთის კოორდინატები ივენთის ტიპი ივენთის ელემენტი დაჭერილ ღილაკების მიღება მოდიფიკატორ ღილაკების თვალთვალება ნაგულისხმევი მოქმედების გაუქმება ივენთების ამოფრქვევა (Bubbling) სამიზნე ელემენტი ამოფრქვევისას ივენთების ამოფრქვევის შეჩერება რამდენიმე დამმუშავებელი ელემენტზე ამოფრქვევის უმალვე შეჩერება ივენთების ამოფრქვევის შეჩერების გამოყენება ივენთების ჩაძირვა (Capturing) დამმუშავებლები ახალ ელემენტებზე ივენთების დელეგირება ივენთების უნივერსალური დელეგირება

კონტექსტი

კონტექსტთან მუშაობის საფუძვლები უკავშირო ფუნქციის კონტექსტი კონტექსტის დაკარგვა პრობლემის მოგვარება კონტექსტთან ამოხსნა ცვლადის საშუალებით ამოხსნა პარამეტრის საშუალებით ამოხსნა ისრის ფუნქციის საშუალებით call მეთოდი call მეთოდი პარამეტრებთან apply მეთოდი bind მეთოდი

ტაიმერები

ტაიმერის გაშვება მთვლელი ტაიმერზე ტაიმერის გაჩერება ღილაკები გასაშვებად მრავალჯერადი გაშვება ღილაკები გასაჩერებლად მუშაობა DOM-თან ტაიმერები და კონტექსტის დაკარგვა პრაქტიკა ტაიმერებსა და DOM-ზე დაყოვნება შესრულებამდე ტაიმერი დაყოვნებით

ელემენტებით მანიპულირება

ელემენტების შექმნა და ჩასმა მოვლენების მიბმა ჩასმისას ელემენტების შექმნა ციკლში შემმუშავებლების მიბმა ციკლში ელემენტების წაშლა ჩასმა კიდეზე ჩასმა წინ მიმდებარე ჩასმა ტეგების მიმდებარე ჩასმა ელემენტების კლონირება ელემენტების შემოწმება

პრაქტიკა

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

ფუნქციები და DOM

DOM ელემენტთან მუშაობის ფუნქციები ელემენტების ჯგუფთან მუშაობის ფუნქციები კოლბეკის გადაცემა DOM-თან მუშაობისთვის რიგითი ნომრის გადაცემა კოლბეკში ელემენტის პარამეტრად გადაცემა ფუნქციაში ელემენტების ჯგუფის პარამეტრად გადაცემა HTML ცხრილების შექმნის ფუნქცია ცხრილის ფუნქციიდან დაბრუნება მასივიდან ცხრილის შექმნის ფუნქცია

მოდულები დახურვების მეშვეობით

ცვლადების კონფლიქტები მოდულები დახურვების მეშვეობით პრაქტიკული გამოყენება პარამეტრების გადაცემა მშობელი ელემენტის გადაცემა მოდულის პარამეტრების გადაცემა პარამეტრები ნაგულისხმევად ცვლადების და ფუნქციების ექსპორტი ობიექტის ექსპორტი მოდულებში დახურვების მეშვეობით ბიბლიოთეკები დახურვების მეშვეობით
azbydeenesfrkakkptruuz