কম্পিউটার

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


অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ভাষা ব্যক্তিগত ক্ষেত্র ব্যবহার করে ডেটা লুকানোর অনুমতি দেয়। তারা ক্লাসের অভ্যন্তরীণ আড়াল করতে এগুলি ব্যবহার করে। জেএস-এ অভ্যন্তরীণ কাজগুলিকে আড়াল/এনক্যাপসুলেট করার মতো কোনও বিল্ড সমর্থন নেই৷

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

উদাহরণ

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

আমরা যদি উপরের কোডটি খোলা অবস্থায় লিখি তবে এই কোডটি এই নামগুলির সাথে বিশ্বব্যাপী নামস্থানকে দূষিত করবে। পরিবর্তে আমরা যা করতে পারি তা হল এটিকে একটি আইআইএফই (অবিলম্বে কার্যকরী অভিব্যক্তি) তে মোড়ানো। উদাহরণের জন্য,

উদাহরণ

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

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


  1. উদাহরণ সহ জাভাস্ক্রিপ্টে উত্তরাধিকার

  2. কিভাবে জাভাস্ক্রিপ্টে বেনামী ফাংশন আর্গুমেন্ট পাস?

  3. জাভাস্ক্রিপ্ট আমদানিতে '{ }' ব্যবহার করছেন?

  4. জাভাস্ক্রিপ্টে বেনামী মোড়ানো ফাংশন