ভেরিয়েবল স্টোরেজ
অন্যান্য প্রোগ্রামিং ভাষা (C, C++, Java) থেকে ভিন্ন, জাভাস্ক্রিপ্ট ভেরিয়েবল হ্যান্ডলিং ভিন্ন। ভেরিয়েবলগুলোকে নামযুক্ত কন্টেইনার হিসেবে ভাবা যায়।
স্টোরেজ লোকেশন
- মেমরি (RAM): আপনার জাভাস্ক্রিপ্ট কোডে ঘোষণা করা ভেরিয়েবলগুলো ব্রাউজার প্রসেসের মেমরিতে সংরক্ষিত হয়।
- কুকিজ (Cookies): কুকিজও ভেরিয়েবল সংরক্ষণ করতে পারে, এগুলো প্রায়শই হার্ড ডিস্কে সংরক্ষিত হয়।
মেমরি ম্যানেজমেন্ট
<script>
var rank = 1; // মেমরিতে সংরক্ষিত
var points; // মেমরিতে সংরক্ষিত (undefined)
points = 100; // মেমরিতে মান আপডেট
</script>
গারবেজ কালেকশন
জাভাস্ক্রিপ্টে অটোমেটিক গারবেজ কালেকশন রয়েছে। যখন কোনো ভেরিয়েবল আর রেফারেন্সড নয় (unreachable), তখন মেমরি স্বয়ংক্রিয়ভাবে মুক্ত হয়।
function createData() {
let bigArray = new Array(1000000); // লোকাল ভেরিয়েবল
return bigArray.length;
}
createData(); // ফাংশন শেষে bigArray অপরিহার্য, GC মেমরি মুক্ত করবে
স্টোরেজ টাইপস
| স্টোরেজ | লাইফসাইকেল | স্কোপ | সাইজ লিমিট |
|---|---|---|---|
| Variables (RAM) | পেজ রিফ্রেশ পর্যন্ত | স্কোপ-ভিত্তিক | ব্রাউজার লিমিট |
| localStorage | ম্যানুয়াল মুছা পর্যন্ত | অরিজিন-ভিত্তিক | ~5-10MB |
| sessionStorage | ট্যাব বন্ধ পর্যন্ত | অরিজিন-ভিত্তিক | ~5-10MB |
| Cookies | এক্সপায়ারি পর্যন্ত | ডোমেন-ভিত্তিক | 4KB |