JavaScript လုပ်ဆောင်ချက် ကန့်သတ်ချက်များ
JavaScript function
သည် ပါရာမီတာတန်ဖိုးများ (အကြောင်းပြချက်များ) ကို စစ်ဆေးခြင်း မပြုပါ။
လုပ်ဆောင်ချက် ကန့်သတ်ချက်များ နှင့် အကြောင်းပြချက်များ
ဤကျူတိုရီရယ်တွင် အစောပိုင်းတွင်၊ လုပ်ဆောင်ချက်များတွင် ကန့်သတ်ချက်များ ရှိနိုင်သည်ကို သင်လေ့လာ ခဲ့သည် -
function functionName(parameter1, parameter2, parameter3) {
// code to be executed
}
Function parameters များသည် function definition တွင်ဖော်ပြထားသော အမည်များ ဖြစ်သည်။
Function arguments များသည် function ထံသို့ (နှင့် လက်ခံရရှိသည်) သို့ ပေးပို့ ထားသော တကယ့် တန်ဖိုးများ ဖြစ်သည်။
ကန့်သတ်စည်းမျဉ်းများ
JavaScript လုပ်ဆောင်ချက် အဓိပ္ပါယ်ဖွင့်ဆိုချက်များသည် ကန့်သတ်ဘောင်များအတွက် ဒေတာအမျိုးအစားများကို မသတ်မှတ်ပါ။
JavaScript လုပ်ဆောင်ချက်များသည် လွန်သွားသော အကြောင်းပြချက်များအပေါ် အမျိုးအစား စစ်ဆေးခြင်း မလုပ်ဆောင်ပါ။
JavaScript လုပ်ဆောင်ချက်များသည် လက်ခံရရှိသော အကြောင်းပြချက်များ၏ အရေအတွက်ကို မစစ်ဆေးပါ။
မူရင်း ကန့်သတ်ချက်များ
ပျောက်ဆုံးနေသော အကြောင်းပြချက်များ (ကြေငြာထားသည်ထက်နည်းသော)
လုပ်ဆောင်ချက်တစ်ခုကို ခေါ်လျှင် ပျောက်ဆုံးနေသောတန်ဖိုးများကို သတ်မှတ်ထားသည် undefined
။
တစ်ခါတစ်ရံ ၎င်းကို လက်ခံနိုင်သော်လည်း တစ်ခါတစ်ရံတွင် ကန့်သတ်ဘောင်သို့ ပုံသေတန်ဖိုးတစ်ခု သတ်မှတ်ခြင်းသည် ပိုကောင်းသည်-
ဥပမာ
function myFunction(x, y) {
if (y === undefined) {
y = 2;
}
}
ECMAScript 2015 သည် လုပ်ဆောင်ချက် ကြေငြာချက်တွင် ပုံသေပါရာမီတာတန်ဖိုးများကို ခွင့်ပြုသည်-
function myFunction(x, y = 2) {
// function code
}
Arguments Object ၊
JavaScript လုပ်ဆောင်ချက်များတွင် arguments object ဟုခေါ်သော built-in object တစ်ခုရှိသည်။
အငြင်းအခုံအရာဝတ္တုတွင် လုပ်ဆောင်ချက်ကို (ခေါ်ဝေါ်သောအခါ) အသုံးပြုသည့် argument တစ်ခုပါရှိသည်။
ဤနည်းဖြင့် သင်သည် နံပါတ်များစာရင်းတွင် အမြင့်ဆုံးတန်ဖိုး (ဥပမာ) ကိုရှာဖွေရန် လုပ်ဆောင်ချက်တစ်ခုကို ရိုးရှင်းစွာ အသုံးပြုနိုင်သည်။
ဥပမာ
x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
let max = -Infinity;
for (let i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
သို့မဟုတ် ထည့်သွင်းမှုတန်ဖိုးများအားလုံးကို ပေါင်းရန် လုပ်ဆောင်ချက်တစ်ခုကို ဖန်တီးပါ-
ဥပမာ
x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
let sum = 0;
for (let i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
လုပ်ဆောင်ချက်တစ်ခုကို အကြောင်းပြချက်များစွာ ဖြင့် ခေါ်ပါက (ကြေငြာထားသည်ထက် ပိုနေသည်)၊ ဤ အကြောင်းပြချက် များသည် arguments object ကို အသုံးပြု၍ ရောက်ရှိနိုင်သည် ။
Arguments များကို Value ဖြင့် ကျော်လွန်ပါသည်။
လုပ်ဆောင်ချက်ခေါ်ဆိုမှုတစ်ခုတွင် ဘောင်များသည် လုပ်ဆောင်ချက်၏ အကြောင်းပြချက်များဖြစ်သည်။
JavaScript argument များကို value ဖြင့် ဖြတ်သွားသည် : function သည် argument ၏ တည်နေရာများကို မဟုတ်ဘဲ values များကိုသာ သိခွင့်ရပါသည်။
လုပ်ဆောင်ချက်တစ်ခုသည် အငြင်းအခုံတစ်ခု၏တန်ဖိုးကို ပြောင်းလဲပါက၊ ၎င်းသည် ကန့်သတ်ချက်၏မူလတန်ဖိုးကို ပြောင်းလဲမည်မဟုတ်ပေ။
အကြောင်းပြချက်များအတွက် အပြောင်းအလဲများကို လုပ်ဆောင်ချက်ပြင်ပတွင် မမြင်နိုင် (ရောင်ပြန်ဟပ်သည်)။
အရာဝတ္ထုများကို အကိုးအကားဖြင့် ကျော်သွားကြသည်။
JavaScript တွင်၊ အရာဝတ္ထုကိုးကားချက်များသည် တန်ဖိုးများဖြစ်သည်။
ထို့အတွက်ကြောင့် အရာဝတ္ထုများသည် ၎င်းတို့အား အကိုးအကားဖြင့် ဖြတ်သန်းသွားသကဲ့သို့ ပြုမူလိမ့်မည် -
လုပ်ဆောင်ချက်တစ်ခုသည် အရာဝတ္ထုပစ္စည်းဥစ္စာပိုင်ဆိုင်မှုကို ပြောင်းလဲပါက၊ ၎င်းသည် မူရင်းတန်ဖိုးကို ပြောင်းလဲသည်။
အရာဝတ္တုဂုဏ်သတ္တိဆိုင်ရာ အပြောင်းအလဲများကို လုပ်ဆောင်မှုအပြင်ဘက်တွင် မြင်နိုင် (ရောင်ပြန်ဟပ်သည်)။