JavaScript හි ශ්රිත වලට බාහිර විචල්ය වෙත ප්රවේශය
පහත කේතය සලකා බලමු:
let num = 1; // විචල්යයේ අගය සකසයි
function func() {
console.log(num); // එය කොන්සෝලයේ ප්රදර්ශනය කරයි
}
func(); // ශ්රිතය කැඳවයි
මම කලින් සඳහන් කළ පරිදි, විචල්යයේ අගය ශ්රිතය නිර්වචනය කිරීමට පෙර තිබීම අනිවාර්ය නොවේ, ප්රධාන කාරණය නම් එය එහි කැඳවීමට පෙර පිහිටා තිබිය යුතුය:
function func() {
console.log(num);
}
let num = 1;
func();
ඇත්තටම මෙය හරියටම එසේ නොවේ. අපගේ ශ්රිතය
එය කැඳවීමට පෙරවත් විචල්යයේ අගය
num දන්නා අතර:
let num = 1;
function func() {
console.log(num); // ශ්රිතය දැනටමත් දන්නවා num = 1 බව
}
මෙන්න වඩාත් සංකීර්ණ උදාහරණයක්:
let num = 1; // මෙම මොහොතේ ශ්රිතය දැන ගනී num = 1 බව
function func() {
console.log(num);
}
num = 2; // මෙම මොහොතේ ශ්රිතය දැන ගනී num = 2 බව
ශ්රිතය කැඳවීම් එකතු කරමු:
let num = 1; // මෙම මොහොතේ ශ්රිතය දැන ගනී num = 1 බව
func(); // 1 ප්රදර්ශනය කරයි
function func() {
console.log(num);
}
func(); // 1 ප්රදර්ශනය කරයි
num = 2; // මෙම මොහොතේ ශ්රිතය දැන ගනී num = 2 බව
func(); // 2 ප්රදර්ශනය කරයි
තවත් වතාවක්: ඇත්තටම ශ්රිතය අගයන් දන්නා අතර බාහිර විචල්යවල, කැඳවීමට ලක් නොවුණද.