JavaScript တွင် အက္ခရာရှေ့ထားနှင့် အက္ခရာနောက်ထား အမျိုးအစားများ

တကယ်တော့ တိုးပွားခြင်းနှင့် လျှော့ချခြင်း လုပ်ဆောင်ချက်များကို နည်းလမ်းနှစ်မျိုးဖြင့် ရေးသားနိုင်ပါသည်။ ဤနည်းလမ်းများကို ++ နမူနာဖြင့် ကြည့်ရှုကြပါစို့၊ -- အတွက်လည်း အလားတူပဲ ဖြစ်ပါမည်။

ပထမနည်းလမ်းတွင် လုပ်ဆောင်ချက်ကို ကိန်းရှင်၏ အမည်နောက်တွင် ဤကဲ့သို့ရေးသားသည် - a++၊ ဒုတိယနည်းလမ်းတွင် - ကိန်းရှင်၏ အမည်ရှေ့တွင် ဤကဲ့သို့ရေးသားသည် - ++a။

ပထမပုံစံကို အက္ခရာနောက်ထား ဟုခေါ်ပြီး၊ ဒုတိယပုံစံကို အက္ခရာရှေ့ထား ဟုခေါ်သည်။ ဤပုံစံနှစ်ခုကြား ကွဲပြားမှုများ မည်သည့်အခြေအနေများတွင် ပေါ်လွင်သည်ကို ကြည့်ရှုကြပါစို့။

ကျွန်ုပ်တို့တွင် alert(a++) ကုဒ်နှင့် alert(++a) ကုဒ် ရှိသည်ဆိုပါစို့။

alert(a++) အခြေအနေတွင် ကိန်းရှင်ကို ပထမဦးစွာ ထုတ်ပြီးမှ တစ်ဖက်သို့ တိုးပွားစေပြီး၊ alert(++a) အခြေအနေတွင် ကိန်းရှင်ကို ပထမဦးစွာ တစ်ဖက်သို့ တိုးပွားစေပြီးမှ ထုတ်ပြသည်။

အောက်ပါနမူနာတွင် ပထမ alert သည် 0 ကိုထုတ်ပြမည်၊ အဘယ့်ကြောင့်ဆိုသော် ပထမဦးစွာ စခရင်ပေါ်သို့ ထုတ်ပြခြင်း လုပ်ဆောင်ပြီးမှ ကိန်းရှင် တိုးပွားသွားသောကြောင့် ဖြစ်သည်။

javascriptlet num = 0;
alert(num++); // 0 ကိုထုတ်ပြမည်
alert(num);   // 1 ကိုထုတ်ပြမည်

ယခုတွင် ကိန်းရှင်သည် ပထမဦးစွာ တိုးပွားပြီးမှ စခရင်ပေါ်သို့ ထုတ်ပြမည် ဖြစ်သည်။

javascriptlet num = 0;
alert(++num); // 1 ကိုထုတ်ပြမည် - ကိန်းရှင်သည် ချက်ချင်းတိုးပွားသွားသည်

ဤကဲ့သို့သော အပြုအမူသည် စခရင်ပေါ်သို့ ထုတ်ပြခြင်းအတွက်သာမက တန်ဖိုးသတ်မှတ်ပေးခြင်းအတွက်လည်း မှန်ကန်ပါသည်။

javascriptlet num1 = 0;
let num2 = num1++; // num2 ကိန်းရှင်ထဲသို့ 0 ရေးထည့်မည်
alert(num2); // 0 ကိုထုတ်ပြမည်
alert(num1); // 1 ကိုထုတ်ပြမည် - num2 ထဲသို့ ရေးထည့်ပြီးနောက် num1 ကိန်းရှင် ပြောင်းလဲသွားသည်

ယခု အက္ခရာနောက်ထား ပုံစံမှ အက္ခရာရှေ့ထား ပုံစံသို့ ပြောင်းလိုက်ကြပါစို့။

javascriptlet num1 = 0;
let num2 = ++num1; // num2 ကိန်းရှင်ထဲသို့ 1 ရေးထည့်မည်
alert(num2); // 1 ကိုထုတ်ပြမည်

ကျွန်ုပ်တို့၏ လုပ်ဆောင်ချက်ကို သီးခြားစာကြောင်းတစ်ခုတွင် လုပ်ဆောင်ပါက၊ အက္ခရာရှေ့ထားနှင့် အက္ခရာနောက်ထား ပုံစံနှစ်ခုကြား ကွဲပြားမှု မရှိပါ။

javascriptlet num = 0;
++num;
num++;
alert(num); // 2 ကိုထုတ်ပြမည်
Задание 1

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num = 3;
alert(++num);
Задание 2

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num = 3;
alert(num++);
Задание 3

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num = 3;
alert(--num);
Задание 4

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num = 3;
alert(num--);
Задание 5

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num1 = 3;
let num2 = ++num1;
alert(num1);
alert(num2);
Задание 6

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num1 = 3;
let num2 = num1++;
alert(num1);
alert(num2);
Задание 7

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num1 = 3;
let num2 = --num1;
alert(num1);
alert(num2);
Задание 8

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num1 = 3;
let num2 = num1--;
alert(num1);
alert(num2);
Задание 9

ကုဒ်ကို မစတင်ဘဲ၊ စခရင်ပေါ်တွင် အဘယ်အရာကို ထုတ်ပြမည်ကို သတ်မှတ်ပါ။

javascriptlet num1 = 3;
num1++;
let num2 = num1--;
alert(num1++);
alert(--num2);