JavaScript တွင် နာမည်တူ parameter များ

ယခု အပြင်ဘက် function နှင့် အတွင်းဘက် function တို့တွင် နာမည်တူ parameter များ ရှိသည်ဆိုပါစို့:

javascriptfunction test(num) {
  function func(num) {
    console.log(num); // 1 ကို ပြသမည်
  }
  
  func(num);
};

test(1);

ဤကိစ္စတွင် အတွင်းဘက် function အတွင်း၌ local variable num ရှိလိမ့်မည်။ ၎င်းအား အတွင်းဘက် function အတွင်း ပြောင်းလဲခြင်းသည် အပြင်ဘက် variable num ကို ဘယ်လိုမှ သက်ရောက်မှုရှိမည် မဟုတ်ပါ:

javascriptfunction test(num) {
  function func(num) {
    num = 2; // local variable num ကို ပြောင်းလဲသည်
  }
  
  func(num);
  console.log(num); // 1 ကို ပြသမည် - ဘာမှ မပြောင်းလဲပါ
}

test(1);

ထိုသို့ဆိုလျှင် အတွင်းဘက် function သည် အပြင်ဘက် variable num ကို ၎င်းကို ပြောင်းလဲရန် အတွက် ဘယ်လိုမှ လက်လှမ်းမီ၍ ရခြင်းမရှိနိုင်တော့ပါ:

javascriptfunction test(num) {
  function func(num) {
    // ဤနေရာတွင် အပြင်ဘက် variable num ကို လက်လှမ်းမီ၍မရနိုင်ပါ
  }
  
  func(num);
}
test(1);
Задание 1

ကုဒ်ကို မဖွင့်မီ ဘာကို console တွင် ပြသမည်ကို ဆုံးဖြတ်ပါ:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  func(num);
}

test(1);
Задание 2

ကုဒ်ကို မဖွင့်မီ ဘာကို console တွင် ပြသမည်ကို ဆုံးဖြတ်ပါ:

javascriptfunction test(num) {
  function func(num) {
    num = 2;
  }
  
  func(num);
  console.log(num);
}

test(1);
Задание 3

ကုဒ်ကို မဖွင့်မီ ဘာကို console တွင် ပြသမည်ကို ဆုံးဖြတ်ပါ:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  num = 2;
  func(num);
}

test(1);
Задание 4

ကုဒ်ကို မဖွင့်မီ ဘာကို console တွင် ပြသမည်ကို ဆုံးဖြတ်ပါ:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  func(num);
  num = 2;
}

test(1);