কোন ফাংশনের ভিতরে ভেরিয়েবল ডিক্লেয়ার করলে সেটি সেই ফাংশনের local ভেরিয়েবল হিসেবে কাজ করে। এই ভেরিয়েবল সাধারণভাবে ঐ ফাংশনের scope-এর মধ্যেই ব্যবহার করা যায়।
function checkscope() { var myVar = "local"; document.write(myVar); } checkscope();
Local ভেরিয়েবল যে ফাংশনের মধ্যে তৈরি করা হয়, সাধারণভাবে সেই ফাংশনের মধ্যেই তার ব্যবহার করা হয়। ফাংশনটি কল করার সময় ভেরিয়েবলটি প্রয়োজনীয় কাজ সম্পন্ন করে।
function showName() { var name = "Rahim"; document.write(name); } showName();
একটি ফাংশনের ভিতরে তৈরি করা local ভেরিয়েবলকে সাধারণভাবে ফাংশনের বাইরে সরাসরি ব্যবহার করা যায় না। কারণ এর scope ঐ ফাংশনের মধ্যে সীমাবদ্ধ।
function test() { var message = "Hello"; document.write(message); } test();
নোট - message ভেরিয়েবলটি test() ফাংশনের ভিতরে তৈরি হয়েছে, তাই সেটির ব্যবহারও ঐ scope-এর মধ্যেই সীমাবদ্ধ।
ভিন্ন ভিন্ন ফাংশনের মধ্যে একই নামে local ভেরিয়েবল ব্যবহার করা যায়। প্রতিটি ফাংশনের scope আলাদা হওয়ায় একটি ফাংশনের local ভেরিয়েবল অন্য ফাংশনের একই নামের ভেরিয়েবলকে পরিবর্তন করে না।
function first() { var name = "Rahim"; document.write(name); } function second() { var name = "Karim"; document.write(name); } first(); second();
একই নামে একটি global এবং একটি local ভেরিয়েবল থাকলে ফাংশনের ভিতরে local ভেরিয়েবলটি অগ্রাধিকার পায়।
var name = "Global"; function checkName() { var name = "Local"; document.write(name); } checkName();
নোট - ফাংশনের ভিতরে একই নামে local ভেরিয়েবল থাকলে সেই scope-এর মধ্যে local ভেরিয়েবলটির মান ব্যবহৃত হয়।
Scope বলতে বোঝায় কোন জায়গা থেকে একটি ভেরিয়েবলকে ব্যবহার করা যাবে। Local ভেরিয়েবলের ক্ষেত্রে scope বোঝা খুব গুরুত্বপূর্ণ, কারণ ভেরিয়েবলটি যেখানে ডিক্লেয়ার করা হয়েছে তার উপর তার ব্যবহারযোগ্যতা নির্ভর করে।
একটি ফাংশনের প্রয়োজনীয় data সেই ফাংশনের scope-এর মধ্যে রাখার জন্য local ভেরিয়েবল ব্যবহার করা হয়। এতে বড় প্রোগ্রামের বিভিন্ন অংশের ভেরিয়েবলকে আলাদা scope-এ রাখা সহজ হয়।
বর্তমান JavaScript-এ local scope বোঝার সময় var, let এবং const সম্পর্কে ধারণা থাকা প্রয়োজন। এই পেজের মূল উদাহরণে var ব্যবহার করা হয়েছে, কারণ মূল websSchool পেজেও local ভেরিয়েবল বোঝাতে var ব্যবহার করা হয়েছে।
function example() { var a = 10; let b = 20; const c = 30; document.write(a + "
"); document.write(b + "
"); document.write(c); } example();
নোট - var, let ও const-এর scope এবং declaration-এর নিয়ম এক নয়। তাই আধুনিক JavaScript শেখার সময় এগুলোর পার্থক্য আলাদাভাবে জানা প্রয়োজন।
Local ভেরিয়েবল নিয়ে কাজ করার সময় সবচেয়ে সাধারণ ভুল হলো ভেরিয়েবলটি কোন scope-এর মধ্যে তৈরি হয়েছে তা না বোঝা।
নিচে লোকাল ভেরিয়েবল এর সাধারণ বৈশিষ্ট গুলো দেখুন।