জাভাস্ক্রিপ্টে বাহ্যিক এবং অভ্যন্তরীণ ফাংশনের প্যারামিটার
আসুন এমন করি যাতে বাহ্যিক ফাংশন এবং অভ্যন্তরীণ উভয়ই প্যারামিটার গ্রহণ করে:
function test(num) {
function func(localNum) {
console.log(localNum);
}
}
অভ্যন্তরীণ ফাংশন কল করতে বাহ্যিক ফাংশনের প্যারামিটার পাঠানো যাক:
function test(num) {
function func(localNum) {
console.log(localNum); // 1 প্রদর্শন করবে
}
func(num); //!! প্যারামিটার পাঠাচ্ছি
}
test(1); // সংখ্যাটি প্যারামিটার হিসেবে পাঠানো হচ্ছে
এর ফলে, অভ্যন্তরীণ ফাংশনে
num ভেরিয়েবলটি প্যারেন্ট ফাংশন থেকে একটি বাহ্যিক
ভেরিয়েবল হিসেবে এবং localNum ভেরিয়েবলটি
অভ্যন্তরীণ ফাংশনের একটি স্থানীয় ভেরিয়েবল হিসেবে উপলব্ধ হবে।
এই উভয় ভেরিয়েবলের মান একই হবে:
function test(num) {
function func(localNum) {
console.log(num); // 1 প্রদর্শন করবে
console.log(localNum); // 1 প্রদর্শন করবে
}
func(num);
}
test(1);
তাদের মধ্যে পার্থক্য হবে নিম্নরূপ: যদি
অভ্যন্তরীণ ফাংশনে num ভেরিয়েবলটি পরিবর্তন করা হয়
- তবে এটি বাহ্যিক ফাংশনেও পরিবর্তিত হবে:
function test(num) {
function func(localNum) {
num = 2; // num ভেরিয়েবল পরিবর্তন করা হচ্ছে
}
func(num); // প্যারামিটার পাঠানো হচ্ছে
console.log(num); // 2 প্রদর্শন করবে
}
test(1); // সংখ্যাটি প্যারামিটার হিসেবে পাঠানো হচ্ছে
আর localNum ভেরিয়েবলটি স্থানীয় হবে।
এটির পরিবর্তন বাহ্যিক ফাংশনে কোনো
পরিবর্তন ঘটাবে না। এবং localNum ভেরিয়েবলটি নিজেই
অভ্যন্তরীণ ফাংশনের বাইরে দৃশ্যমান হবে না:
function test(num) {
function func(localNum) {
localNum = 2; // num ভেরিয়েবল পরিবর্তন করা হচ্ছে
}
func(num); // প্যারামিটার পাঠানো হচ্ছে
}
test(1); // সংখ্যাটি প্যারামিটার হিসেবে পাঠানো হচ্ছে
কোড চালু না করে নির্ধারণ করুন কনসোলে কী 출력 হবে:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num);
}
test(1);
কোড চালু না করে নির্ধারণ করুন কনসোলে কী 출력 হবে:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num + 1);
}
test(1);
কোড চালু না করে নির্ধারণ করুন কনসোলে কী OUTPUT হবে:
function test(num) {
function func(localNum) {
console.log(num);
}
func(num + 1);
}
test(1);
কোড চালু না করে নির্ধারণ করুন কনসোলে কী OUTPUT হবে:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(num);
}
test(1);
কোড চালু না করে নির্ধারণ করুন কনসোলে কী OUTPUT হবে:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(localNum);
}
test(1);
কোড চালু না করে নির্ধারণ করুন কনসোলে কী OUTPUT হবে:
function test(num) {
function func(localNum) {
num = 2;
}
func(num);
console.log(num);
}
test(1);