პროგრამირების საფუძვლები › დამწყები › ოპერატორები და გამოსახულებები
მინიჭების მოკლე ფორმები
ეს თავი CodeQuest Pro-ს ნაწილია
Pro ხსნის სკოლის ყველა კურსს და თამაშის ყველა ლეველს, ვიდეოს და პროექტს. ერთჯერადი გადახდა, გამოწერის გარეშე.
რას ისწავლი
- როგორ შეცვალო ცვლადი მოკლე ჩანაწერით
+=,-=,*=,/= - რას აკეთებს
++და-- - როგორ „ააწყო“ ტექსტი თანდათან
+=-ით
ცვლადი, რომელიც თავის თავს ცვლის
თამაშებში ერთი და იგივე ცვლადი ხშირად იცვლება: ქულა იზრდება, სიცოცხლე მცირდება. ამის ჩვეულებრივი ჩანაწერი უკვე იცი:
let score = 10;
score = score + 5;
console.log(score); // 15ეს ხაზი ასე იკითხება: „აიღე score-ის ახლანდელი მნიშვნელობა, მიუმატე 5 და შედეგი ისევ score-ში ჩადე“. ასეთი რამ იმდენად ხშირია, რომ ენას მისთვის მოკლე ჩანაწერი აქვს.
მინიჭების მოკლე ოპერატორები
score = score + 5 და score += 5 ზუსტად ერთსა და იმავეს ნიშნავს. ასეთი მინიჭების ოპერატორი (assignment operator) ყველა არითმეტიკულ მოქმედებას აქვს:
let score = 10;
score += 5; // score = score + 5 → 15
score -= 3; // score = score - 3 → 12
score *= 2; // score = score * 2 → 24
score /= 4; // score = score / 4 → 6
score %= 4; // score = score % 4 → 2
console.log(score);მიჰყევი ნაბიჯებს: 10 → 15 → 12 → 24 → 6 → 2. ყოველი ხაზი წინა ხაზის შედეგს იყენებს.
ერთით გაზრდა და შემცირება
ერთით გაზრდა ყველაზე ხშირი შემთხვევაა: დონე გადავიდა, კიდევ ერთი მონეტა აიღე. ამისთვის ყველაზე მოკლე ჩანაწერი არსებობს:
let level = 1;
level++; // level = level + 1
console.log(level); // 2
let lives = 3;
lives--; // lives = lives - 1
console.log(lives); // 2++-ს ინკრემენტი (increment) ჰქვია, ---ს დეკრემენტი (decrement). ციკლებში მათ ძალიან ხშირად შეხვდები.
ცვლადს, რომელიც რაღაცას ითვლის, მთვლელი (counter) ჰქვია. მთვლელი თითქმის ყველა პროგრამაშია: რამდენჯერ დააჭირა მომხმარებელმა ღილაკს, რამდენი სწორი პასუხი გასცა, რამდენი წამი დარჩა. მისი სიცოცხლე ყოველთვის ერთნაირია: ჯერ იქმნება საწყისი მნიშვნელობით, ხშირად ნულით, მერე პროგრამის განმავლობაში იზრდება ან მცირდება, ბოლოს კი მის მნიშვნელობას ვბეჭდავთ ან ვამოწმებთ.
ტექსტის აწყობა
+= სტრიქონებზეც მუშაობს: ის ტექსტს ბოლოში ამატებს. ასე გრძელ შეტყობინებას ნაწილ-ნაწილ ააწყობ:
let message = "გამარჯობა";
message += ", ნიკა";
message += "!";
console.log(message); // გამარჯობა, ნიკა!სცადე თავად
გაუშვი და შეამოწმე, დაემთხვა თუ არა შედეგი შენს ვარაუდს. მერე შეცვალე რიცხვები.
ხშირი შეცდომები
=+ნაცვლად+=-ისა.score =+ 5შეცდომას არ იძლევა, მაგრამ ნიშნავსscore = +5-ს: ცვლადს უბრალოდ 5 მიენიჭება. ნიშნების რიგი მნიშვნელოვანია: ჯერ მოქმედება, მერე=.constცვლადის შეცვლა.const score = 10; score += 5;შეცდომას იძლევაTypeError: Assignment to constant variable. ცვლადი, რომელიც უნდა იცვლებოდეს,let-ით შექმენი.- გამოსახულება მინიჭების გარეშე. ხაზი
score + 5;ითვლის ჯამს, მაგრამ არსად ინახავს.scoreარ იცვლება.
სავარჯიშო
ყულაბაში 20 ლარია. დაამატე 15 ლარი, მერე დახარჯე 8, ბოლოს ბებიამ რაც დაგრჩა, გაგიორმაგა. ყოველი ნაბიჯი მოკლე ოპერატორით გააკეთე და ბოლოს დაბეჭდე ყულაბაში: 54.
💡 მინიშნება
დამატება +=-ით, ხარჯი -=-ით, გაორმაგება *=-ით. 20 → 35 → 27 → 54.
✅ ამოხსნის ნახვა
let money = 20;
money += 15;
money -= 8;
money *= 2;
console.log("ყულაბაში:", money);მინი-ქვიზი
1რა იქნება a-ში? let a = 7; a += 3;
a += 3 იგივეა, რაც a = a + 3. 7 + 3 არის 10.
2რა იქნება n-ში? let n = 5; n--;
-- ცვლადს ერთით ამცირებს.
3რა იქნება x-ში? let x = 10; x =+ 2;
=+ 2 ნიშნავს = +2-ს, ანუ ჩვეულებრივ მინიჭებას. სწორი ჩანაწერია x += 2.
შეჯამება
x += 5იგივეა, რაცx = x + 5. ასევე მუშაობს-=,*=,/=და%=.x++ცვლადს ერთით ზრდის,x--ერთით ამცირებს.- სტრიქონზე
+=ტექსტს ბოლოში ამატებს. - ცვლადი, რომელიც იცვლება,
let-ით უნდა შეიქმნას.