জাভাস্ক্রিপ্ট স্কোপ (JavaScript Scope)
স্কোপ হচ্ছে একসেস করা যায় এরকম ভেরিয়েবল।
জাভাস্ক্রিপ্টে অবজেক্ট এবং ফাংশনও ভেরিয়েবল হিসেবে বেবহৃত হয়, এখানে স্কোপ হচ্ছে ভেরিয়েবল, অবজেক্ট এবং ফাংশনের সেট যেখানে একসেস করা যায়।
লোকাল জাভাস্ক্রিপ্ট ভেরিয়েবল
জাভাস্ক্রিপ্টের ফাংশনের ভেতরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় তা ঐ ফাংশনেগুলো লোকাল ভেরিযবল এবং এর স্কোপ লোকাল। এই ভেরিযবল শুধুমাত্র ঐ ফাংশনে ব্যবহার করা যাবে।
উদাহরণ:
// code here can not use carName function myFunction() { var carName = "Volvo"; // code here can use carName }
যেহেতু লোকাল ভেরিয়েবল শুধুমাত্র নির্দিষ্ট ফাংশনে ব্যবহৃত হয় তাই একই নামের ভেরিয়েবল বিভিন্ন ফাংশনে ব্যবহার করা যাবে। একটি ফাংশন কল করা হলে লোকাল ভেরিয়েবল তৈরী হয় এবং ফাংশন শেষে ধ্বংশ হয়ে যায়।
গ্লোবাল জাভাস্ক্রিপ্ট ভেরিয়েবল
ফাংশনের বাহিরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় সেগুলো গ্লোবাল ভেরিযবল। গ্লোবাল ভেরিযবলের স্কোপ গ্লোবাল থাকে, ওয়েবপেজের সকল স্ক্রিপ্ট এবং ফাংশন থেকে তা একসেস করা যায়।
উদাহরণ:
var carName = " Volvo"; // code here can use carName function myFunction() { // code here can use carName }
অটোমেটিক গ্লোবাল
আপনি যদি কোন ভেরিয়েবল এর মান নির্ধারণ করে দেন যা আগে ডিক্লেয়ার করা হয়নি এটি সয়ংক্রিয়ভাবে গ্লোবাল ভেরিয়েবল এ পরিণত হয়।
এই উদাহরণ এ carName কে গ্লোবাল ভেরিয়েবল হিসেবে ডিক্লেয়ার করা হয়েছে।
// code here can use carName function myFunction() { carName = "Volvo"; // code here can use carName }
জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম
কোন ভেরিযবল ডিক্লেয়ার করার সময় থেকেই জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম শুরু হয়।
কোন ফাংশন কমপ্লিট হওয়ার পর লোকাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।
পেজ ক্লোজ করার পর গ্লোবাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।
ফাংশনাল আর্গুমেন্ট
ফাংশনাল আর্গুমেন্ট ফাংশনের ভেতরে লোকাল ভেরিযবল হিসেবে কাজ করে।
HTML এ গ্লোবাল ভেরিযবল
HTML এ গ্লোবাল ভেরিযবল বলতে উইন্ডো অবজেক্টকে বোঝানো হয়, সকল গ্লোবাল ভেরিযবল উইন্ডো অবজেক্টের অন্তর্গত।
উদাহরণ:
// code here can use window.carName function myFunction() { carName = "Volvo"; }
নোট: গ্লোবাল ভেরিয়েয়েবল বা ফাংশন, আপনার উইন্ডোজ ভেরিয়েবল বা ফাংশনকে অভাররাইট করতে পারে।