JavaScript: Asosiy operatorlar va matematik amallar | 2-Qism

๐Ÿ‘‰ Darslikning birinchi qismi: https://devlab.uz/javascript-asosiy-operatorlar-va-matematik-amallar-1qism

Tenglik =

= operatori ham JavaScriptda alohida o'rni bor. Bu operator boshqa matematik amallardan keyin amalga (invoke) qilinadi. Masalan:

let x = 2 * 2 + 1;
console.log(x); // 5

Tahmin qilganingizde, yuqorida kodda avvalo * va + amallari bajarilda va shundan keyingina x ma'lumot turiga natija biriktirildi.

Zanjir Tenglik

Ma'lumot turlarining bir-biriga biror datani o'tkazishlari. Masalan:

let a, b, c;
a = b = c = 2 + 2;
console.log(a); // 4
console.log(b); // 4
console.log(c); // 4

Avvalgi postlarimizda aytganimizdek, JavaScriptda tengliklar o'ngdan chapga amalga oshiriladi. Yuqoridagi kodni misol qilaylik. Birinchi, 2 + 2 birikmasi hisoblanadi, ya'ni 4 . Undan keyin esa, c, b va oxirgi bo'lib a ma'lumot turiga natija biriktiriladi.

Matematik amallarning qisqa shakli

JavaScriptda matematik amallarni bajarilishini qisqa shakllari mavjud. Masalan, aytaylik, biz biror sonni bir vaqtning o'zida qo'shuv va ko'paytiruv amallari bilan miqdorini o'zgartirmoqchimiz.

let x = 2;
x = x + 4;
x = x * 6;

Buning qisqa shakli esa:

let x = 2;
x += 4; // hozirgi miqdor 6 (va bu x = x + 4 bilan bir xil)
x *= 6; // hozirgi miqdor 36 (va bu x = x * 6 bilan bir xil)

console.log(x); // 36

Increment / Decrement

JavaScriptda juda ko'p ishlatiladigan operatorlar.

Increment - belgisi ++, ya'ni biror songa 1 qo'shadi. Masalan:

let number = 5;
number++; // bu numer = number + 1 bilan teng
console.log(number); // 6

Decrement - belgisi -- . Decrement sondan 1 ni ayiradi:

let number = 8;
number--; // bu number = number - 1 bilan teng
console.log(number); // 7

Lekin ++ va -- operatorlari o'zgaruvchidan avval yoki keyin turishi ham mumkin.

  • postfixyoki post-increment / decrement : number++ yoki number--

  • prefix yoki pre-increment / decrement: ++number yoki --number

Ularni orasida farq bormi? - Bor. Farqi, qachon biz ++/-- lardan qaytgan natijalarni olishni xohlashimizga bog'liq. Aniqroq qilib aytsak, prefix ++/--number holatida biz sonning yangi miqdorini o'sha zahotiyoq olamiz, lekin postfix number++/-- sonning eski miqdorini qaytaradi ya'ni u sonning miqdorini ยฑ1 ga o'zgaritiradi va yangi miqdorni "xotirasida" saqlaydi. Biz o'sha sonni keyingi marta qabul qilganimizda, yangi miqdorni ko'rishimiz mumkin.

Keling, kodda misollar bilan ko'ramiz.

let number = 2;
console.log(number++); // 2
console.log(number); // 3

Postfix holatida, number ga 1 qo'shildi, lekin, uni qabul qilishimizdan oldin postfix number ning eski miqdorini qaytardi.

let number = 2;
console.log(++number); // 3
console.log(number); // 3

Yuqorida aytganimdek, prefix sonning yangi miqdorini shu zahotiyoq qaytaradi.

Xulosa qilib aytsak:

  • O'zgaruvchining miqdori sizga qiziq bo'lmasa, prefix/postfix lar o'rtasida farq yo'q

      let counter = 0;
      ++counter;
      counter++;
      console.log(counter); // 2 postfix/prefix bir xil funksiyani bajardi
    
  • Agar, biz sonni miqdorini o'zgartishini va shu zahotiyoq yangi natijani olishni xohlasak, prefixdan foydalanamiz:

      let counter = 1;
      --counter;
      console.log(counter); // 0
    
  • Lekin, biz sonni miqdorini o'zgaritib, uning yangi natijasidan keyinroq foydalanishni xohlasak, postfixni ishlatamiz:

      let counter = 5;
      console.log(counter++); // 5 (bu qatordan keyin counter = 6)
    

Vergul ,

Operatorlar orasida juda kam ishlatiladigan va g'ayri-oddiy operator hisoblanadi. Vergul operatori bir nechta birikmalarni hisoblashdan ishlatiladi va no-odatiy tarafi shuki, , birikmalarning eng oxirgisini qaytaradi. Masalan:

let number = (4 + 6, 1 + 3);
console.log(number); // 4

E'tiboringiz uchun rahmat. Sizga foydali bo'ladi degan umiddaman. Sizga maslahatim, pastda "Subscribe to my newsletter" bo'limida email pochtangizni qoldiring va darslarni e'lon qiligandayoq pochtangizga qabul qiling.

Agar darsliklar sizga yoqayotgan bo'lsa, bizni kuzatib borishingiz mumkin: