JAVASCRIPT

OPP ენა, მასთან ერთად ყველა FRAMEWORK

რეკურსიული ფუნქციები

რეკურსიული ფუნქციები

JAVASCRIPT, WEB
ფუნქციებს შორის შეიძლება ცალკე გამოვყოთ რეკურსიული ფუნქციები. მათი არსი მდგომარეობს იმაში, რომ ფუნქცია იძახებს თავის თავს. მაგალითისთვის ვნახოთ ფუნქცია, რომელიც ითვლის რიცხვის ფაქტორიალს: function getFactorial(n) { if (n === 1) { return 1; } else { return n * getFactorial(n - 1); } } var result = getFactorial(4); console.log(result); // 24 ფუნქცია getFactorial() აბრუნებს 1-ს, თუ n პარამეტრის მნიშვნელობაა 1, თუ არა და აბრუნებს ისევ getFactorial() ფუნქციის მნიშვნელობას პარამეტრით n-1, გამრავლებულს n-ზე.მაგალითად, პარამეტრად 4-ის გადაცემისას ვღებულობთ შემდეგ ჯაჭვს: var result = 4 * getFactorial(3); var result = 4 * 3 * getFactorial(2); var result = 4 * 3 * 2 * getFactorial(1); var result = 4 * 3 * 2 * 1; // 24 ვნახოთ მეორე მაგალითი - ფიბონაჩის რიცხვების გამოთვლა:
ცვლადების ხედვის არე

ცვლადების ხედვის არე

JAVASCRIPT, WEB
ჯავასკრიპტში ყველა პარამეტრს აქვს გარკვეული ხედვის არე, რომლის ფარგლებშიც ისინი მოქმედებენ. გლობალური ცვლადები ყველა ცვლადი, რომელიც გამოცხადებულია ფუნქციის გარეთ, არის გლობალური: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> </head> <body> <script> var x = 5; function displaySquare() { var z = x * x; console.log(z); } </script> </body> </html> აქ ცვლადი x არის გლობალური, მასზე მიმართვა შეიძლება პროგრამის ნებისმიერი ადგილიდან. ხოლო ცვლადი z არაა გლობალური, რადგანაც გამოცხადებულია ფუნქციის შიგნით. ლოკალური ცვლადები ცვლადი, რომელიც გამოცხადებულია ფუნქციის შიგნით, წარმოადგენს ლოკალურ ცვლადს: function displaySquare() { var z = 10; console.log(z); } ცვლადი z ლოკალურია და ის არსებობს მხოლოდ ფუ
ფუნქციები

ფუნქციები

JAVASCRIPT, WEB
უნქცია წარმოადგენს ინსტრუქციების ერთობლიობას, რომლებიც ასრულებენ გარკვეულ მოქმედებას ან ითვლიან გარკვეულ მნიშვნელობას. ფუნქციის სინტაქსს აქვს შემდეგი სახე: function ფუნქციის_სახელი([პარამეტრი [, ...]]) { // ინსტრუქციები } ფუნქციის განსაზღვრა იწყება საკვანძო სიტყვით function, რასაც მოსდევს ფუნქციის სახელი. ფუნქციის დასახელება ექვემდებარება იგივე წესებს, რასაც ცვლადების სახელები. შესაბამისად, ფუნქციის სახელი უნდა შედგებოდეს ასოებისგან, ციფრებისგან და სიმბოლოებისგან "_" და "$". ამასთან, ფუნქციის სახელი არ უნდა იწყებოდეს ციფრით. ფუნქციის სახელის შემდეგ მოდის პარამეტრების ჩამონათვალი. ფუნქციას თუნდაც არ ჰქონდეს პარამეტრი, მაინც უნდა დავსვათ ცარიელი ფრჩხილები. შემდეგ ფიგურულ ფრჩხილებში მოდის ფუნქციის ტანი, რომელიც შეიცავს ინსტრუქციების ერთობლიობას. შევქმნათ უმარტივესი ფუნქცია: funct
ციკლები

ციკლები

JAVASCRIPT, WEB
ციკლები საშუალებას იძლევა გარკვეული პირობების მიხედვით შესრულდეს რაღაც მოქმედებები მრავალჯერ. ჯავასკრიპტში გამოიყენება ციკლის შემდეგი სახეები: for for..in while do..while ციკლი for ციკლს for აქვს შემდეგი სახე: for ([მრიცხველის ინიციალიზაცია]; [პირობა]; [მრიცხველის შეცვლა]) { // მოქმედებები } მაგალითად, გამოვიყენოთ ციკლი მასივის ელემენტების გადასარჩევად: var people = ["Tom", "Alice", "Bob", "Sam"]; for(var i = 0; i<people.length; i++){ document.write(people[i] + "</br>"); } ციკლის პირველი ნაწილი - var i = 0; ახდენს მრიცხველის (ცვლადი i) ინიციალიზაციას. ციკლის დაწყების წინ მისი მნიშვნელობა იქნება 0. მეორე ნაწილი წარმოადგენს პირობას, რომლის შესრულებისას სრულდება ციკლი. მოცემულ შემთხვევაში, ციკლი შესრულდება მანამ, სანამ i-ს მნიშვნელობა არ მიარჭევს მასივის სიგრ
პირობითი კონსტრუქციები

პირობითი კონსტრუქციები

JAVASCRIPT, WEB
პირობითი კონსტრუქციები საშუალებას გვაძლევს შევასრულოთ ესა თუ ის მოქმედება პირობიდან გამომდინარე. ოპერატორი if ოპერატორი if ამოწმებს გარკვეულ პირობას და თუ ეს პირობა ჭეშმარიტია, ასრულებს გარკვეულ მოქმედებას. if კონსტრუქციას აქვს შემდეგი სახე: if(პირობა) მოქმედება; მაგალითად: var income = 100; if(income > 50) alert("შემოსავალი მეტია 50-ზე"); თუ საჭიროა ერთზე მეტი ინსტრუქციის შესრულება, ეს ინსტრუქციები თავსდება ფიგურული ფრჩხილებით შექმნილ ბლოკში: var income = 100; if(income > 50){ var message = "შემოსავალი მეტია 50-ზე"; alert(message); } პირობა შეიძლება იყოს რთული: var income = 100; var age = 19; if(income < 150 && age > 18){ var message = "შემოსავალი მეტია 50-ზე"; alert(message); } კონსტრუქცია  if შესაძლებლობას გვაძლევს შევამოწმოთ მნიშვნელობის
მასივები

მასივები

JAVASCRIPT, WEB
მონაცემთა ნაკრებისთვის გამოიყენება მასივები. მასივის შესაქმნელად გამოიყენება ფუნქცია new Array(): var myArray = new Array(); არსებობს მასივის ინიციალიზაციის უფრო მოკლე ხერხიც: var myArray = []; მოცემულ შემთხვევაში ჩვენ ვქმნით ცარიელ მასივს. თუმცა შეიძლება დავამატოთ საწყისი მონაცემები: var people = ["Tom", "Alice", "Sam"]; console.log(people); ამ შემთხვევაში მასივში myArray იქნება სამი ელემენტი. გრაფიკულად შეიძლება გამოვსახოთ ასე: ინდექსი ელემენტი 0 Tom 1 Alice 2 Sam მასივის ცალკეულ ელემენტებთან მიმართვისთვის გამოიყენება ინდექსი. ათვლა იწყება ნულიდან, შესაბამისად პირველი ელემენტის ინდექსი არის 0, ხოლო ბოლო ელემენტისა - 2: var people = ["Tom", "Alice", "Sam"]; console.log(people[0]); // Tom var person3 = people[2]; // Sam console.log(pers
მონაცემების გარდაქმნა

მონაცემების გარდაქმნა

JAVASCRIPT, WEB
ხშირად ჩნდება საჭიროება, რომ ერთი ტიპის მონაცემები გარდავქმნათ მეორე ტიპში. მაგალითად: var number1 = "46"; var number2 = "4"; var result = number1 + number2; console.log(result); //464 ორივე ცვლადი წარმოადგენს სტრიქონს, უფრო სწორად, რიცხვის სტრიქონულ წარმოდგენას. შეკრების შედეგად ვღებულობთ არა 50-ს, არამედ სტრიქონს 464. ხანდახან რიცხვების სტრიქონულ წარმოდგენაზე საჭიროა რიცხვითი ოპერაციების წარმოება. ასეთ შემთხვევებში იყენებენ გარდაქმნის ოპერაციებს. გამოვიყენოთ ფუნქცია parseInt(): var number1 = "46"; var number2 = "4"; var result = parseInt(number1) + parseInt(number2); console.log(result); // 50 სტრიქონების ათწილადად გარდაქმნისთვის გამოიყენება ფუნქცია parseFloat(): var number1 = "46.07"; var number2 = "4.98"; var result = parseFloat(number1) + parseFloat(number2); console
ოპერაციები ცვლადებზე

ოპერაციები ცვლადებზე

JAVASCRIPT, WEB
მათმატიკური ოპერაციები JavaScript-ს გააჩნია ყველა საბაზისო მათემატიკური ოპერაციის მხარდაჭერა: შეკრება: var x = 10; var y = x + 50; გამოკლება: var x = 10; var y = x - 50; გამრავლება: var x = 10; var y = x * 50; გაყოფა: var x = 10; var y = x / 50; ნაშთი გაყოფისას (ოპერატორი %): var x = 41; var y = 7; var z = x % y; console.log(z); // 6 აბრუნებს 6-ს, რადგან 41 ზე ნაკლები ან ტოლი უდიდესი რიცხვი, რომელიც იყოფა 5-ზე არის 35, 41-35=6. ინკრემენტი: var x = 5; x++; // x = 6 ინკრემენტის ოპერატორი ზრდის ცვლადს 1 ერთეულით. არსებობს პრეფიქსული ინკრემენტი, რომელიც ჯერ ზრდის ცვლადს და მერე აბრუნებს მის მნიშვნელობას, და პოსტფიქსური ინკრემენტი, რომელიც ჯერ მნიშვნელობას აბრუნებს და მერე ცვლის ცვლადს: // პრეფიქსული ინკრემენტი var x = 5; var z = ++x; console.log(x); // 6 console.log(z); // 6
მნიშვნელობათა ტიპები

მნიშვნელობათა ტიპები

JAVASCRIPT, WEB
ჯავასკრიპტში გამოყენებულ ნებისმიერ მონაცემს გააჩნია განსაზღვრული ტიპი. ჯავასკრიპტში გვაქვს 5 პრიმიტიული მონაცემთა ტიპი: string: წარმოადგენს სტრიქონს (ტექსტს) number: წარმოადგენს რიცხვით მნიშვნელობას Boolean: წარმოადგენს ლოგიკურ მნიშვნელობას true ან false undefined: მიუთითებს, რომ მნიშვნელობა არ აქვს მინიჭებული null: მიუთითებს განუსაზღვრელ მნიშვნელობას ნებისმიერი სხვა მონაცემი, რომელიც არ განეკუთვნება ჩამოთვლილ ტიპებს, მიეკუთვნება ტიპს object. რიცხვითი მონაცემები JavaScript-ში რიცხვებს შეიძლება ჰქონდეთ ორი ფორმა: მთელი რიცხვები, მაგალითქად, 35. შეგვიძლია გამოვიყენოთ როგორც დადებითი, ასევე უარყოფითი რიცხვები. გამოყენებული რიცხვების დიაპაზონია -253 -დან 253-მდე. ათწილადები (რიცხვები მცურავი წერტილით), მაგალითად 3.5575. აქაც შეგვიძლია გამოვიყენოთ როგორც და
ცვლადები

ცვლადები

JAVASCRIPT, WEB
პროგრამაში მონაცემების შესანახად გამოიყენება ცვლადები. ცვლადები გამოიყენება რაიმე დროებითი ინფორმაციის შესანახად ან ისეთი მონაცემებისთვის, რომლებიც პროგრამის შესრულებისას შეიძლება შეიცვალონ. ცვლადის შესაქმნელად (გამოსაცხადებლად) გამოიყენება საკვანძო სიტყვა var. მაგალითად, გამოვაცხადოთ ცვლადი myIncome: var myIncome; ყველა ცვლადს გააჩნია სახელი, რომელიც წარმოადგენს ალფავიტურ-ციფრული სიმბოლოების, გახაზვის სიმბოლოს (_) და დოლარის ნიშნის ($) თავისუფალ კომბინაციას, ამასთან ცვლადის სახელი არ შეიძლება იწყებოდეს ციფრით. ყველა სხვა სიმბოლოს გამოყენება აკრძალულია. მაგალითდ, ცვლადების დასაშვები სახელებია: $commision someVariable product_Store income2 myIncome_from_deposit ხოლო შემდეგი სახელები არასწორია: 222lol @someVariable my%percent ასევე არ შეიძლება ცვლადს მივცეთ ისეთი სახელი, რომელიც
ბრაუზერის კონსოლი. console.log და document.write

ბრაუზერის კონსოლი. console.log და document.write

JAVASCRIPT, WEB
ჯავასკრიპტთან მუშაობისას შეუცვლელ ინსტრუმენტს წარმოადგენს ბრაუზერის კონსოლი, რომელიც გვეხმარება პროგრამის დახვეწის პროცესში. თანამედროვე ბრაუზერების უმეტესობას გააჩნია ასეთი კონსოლი. მაგალითად, Google Chrome-ში უნდა გავხსნათ More tools=>Developer tools და გახსნილ ჩანართში ავირჩიოთ Console: კონსოლში შეგვიძლია პირდაპირ შევიყვანოთ ჯავასკრიპტის კოდი და Enter კლავიშზე დაჭერით კოდი შესრულდება. მაგალითად, ჩავწეროთ კონსოლში შემდეგი კოდი: alert("გამარჯობა, სამყაროვ"); Enter-ზე დაჭერის შემდეგ ჯავასკრიპტის კოდი შესრულდება და გამოვა შეტყობინება: ბრაუზერის კონსოლში სხვადასხვა ინფორმაციის გამოსატანად გამოიყენება ფუნქცია console.log(). მაგალითად: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>JavaScript</title> </head> <body>
გარე ფაილის ჩართვა

გარე ფაილის ჩართვა

JAVASCRIPT, WEB
ვებგვერდზე JavaScript-ის ჩართვის კიდევ ერთი საშუალებაა JavaScript-ის კოდის გატანა გარე ფაილში და ამ ფაილის ჩართვა ვებგვერდზე ტეგით <script>. index.html ფაილთან იგივე საქაღალდეში შევქმნათ საქაღალდე js. იგი იქნება განკუთვნილი ჯავასკრიპტის ფაილების შესანახად. ამ საქაღალდის შიგნით შვქმნათ ფაილი myscript.js. ჯავასკრიპტის ფაილებს უნდა ჰქონდეს გაფართოება .js. გავხსნათ შექმნილი ფაილი და ჩავწეროთ შიგნით შემდეგი კოდი: var date = new Date(); // მიმდინარე თარიღის მიღება var time = date.getHours(); // მიმდინარე დრო საათებში if(time < 13) // შევადაროთ რიცხვს 13 alert('დილა მშვიდობისა!'); // მიმდინარე დრო ნაკლებია 13 საათზე else alert('საღამო მშვიდობისა!'); // მიმდინარე დრო მეტია 13 საათზე ახლა ჩავრთოთ ჯავასკრიპტის ფაილი ვებგვერდზე: <!DOCTYPE html> <html> <head> <meta
JavaScript-ის კოდის შესრულება

JavaScript-ის კოდის შესრულება

JAVASCRIPT, WEB
როცა ბრაუზერი იღებს ვებგვერდს html-ისა და JavaScript-ის კოდებით, ის ახდენს მის ინტერპრეტაციას. ინტერპრეტაციის შედეგი სხვადასხვა ელემენტების სახით - ღილაკები, შეყვანის ველები, ბლოკები, გამოისახება ბრაუზერში. ვებგვერდის ინტერპრეტაცია ხდება თანმიმდევრობით ზემოდან ქვემოთ. როცა ბრაუზერი ხედავს JavaScript-ის კოდს, მოქმედებას იწყებს JavaScript-ის ინტერპრეტატორი. სანამ ის არ დაასრულებს მოქმედებას, ვებგვერდის შემდგომი ინტერპრეტაცია ჩერდება. ვნახოთ შემდეგი მაგალითი: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>JavaScript</title> <script> alert("სექცია head"); </script> </head> <body> <h2>პირველი სათაური</h2> <script> alert("პირველი სათაური"); </script> <h2>მეორე სათაური</h2> <script
0Shares