কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে অ্যানোনিমাস ফাংশন ব্যবহার করে এনক্যাপসুলেশন


অবজেক্ট-অরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ প্রাইভেট ফিল্ড ব্যবহার করে ডেটা হাইডিং করে। সেগুলো ক্লাসের ইন্টারনাল হাইড করতে ব্যবহার করে। জেএসে ইন্টারনাল ওয়ার্কিং হাইড/এনক্যাপসুলেট করার জন্য এমন কোনো বিল্ট-ইন সাপোর্ট নেই।

আমাদের অ্যানোনিমাস ফাংশন রয়েছে যা জেএসে এনক্যাপসুলেশন দিতে পারে। চলুন একটি উদাহরণ দেখি -

উদাহরণ

const HIDDEN_CONST = 100; function fnWeWantToHide(x, y) { return (x + y) * HIDDEN_CONST } console.log(fnWeWantToHide(1, 2))

আমরা উপরের কোড খোলায় লিখলে এই কোড এই নামগুলোর সাথে গ্লোবাল নেমস্পেস দূষিত করবে। এর বদলে আমরা এটি একটি IIFE (immediately invoked functional expressions) দিয়ে র‍্যাপ করতে পারি। উদাহরণস্বরূপ,

উদাহরণ

(() => { const HIDDEN_CONST = 100; function fnWeWantToHide(x, y) { return (x + y) * HIDDEN_CONST } console.log(fnWeWantToHide(1, 2)) })()

এখন, এই ভেরিয়েবলগুলো ফাংশনাল এক্সপ্রেশনের ভিতরে হিডেন। কিন্তু ফাংশন এবং const আর গ্লোবাল নেমস্পেস দূষিত করছে না।


  1. জাভাস্ক্রিপ্টে ইনহেরিট্যান্স উদাহরণসহ

  2. জাভাস্ক্রিপ্টে অ্যানোনিমাস ফাংশনে আর্গুমেন্ট পাস করা

  3. জাভাস্ক্রিপ্ট ইমপোর্টে {} ব্রেসের ব্যবহার

  4. জাভাস্ক্রিপ্টে অ্যানোনিমাস র‍্যাপার ফাংশন