85 বার দেখা হয়েছে
"ওয়েব ডেভেলপ" বিভাগে করেছেন

1 টি উত্তর

0 জনের পছন্দ 0 জনের অপছন্দ
করেছেন
JavaScript-এর closures একটি শক্তিশালী বৈশিষ্ট্য, যা ফাংশন এবং তার পরিবেশের মধ্যে সম্পর্ক তৈরি করে। সহজ ভাষায়, closure হল একটি ফাংশন যা তার বাইরের পরিবেশের ভেরিয়েবলগুলির অ্যাক্সেস রাখতে পারে, এমনকি যখন সেই ফাংশনটি বাইরের ফাংশন থেকে কল করা হয় না।

### কিভাবে closures কাজ করে:

1. **ফাংশন সমন্বয়:** যখন একটি ফাংশন তৈরি হয়, এটি একটি নিজস্ব লেক্সিকাল স্কোপ তৈরি করে। এটি একটি এক্সিকিউশন কনটেক্সট সহ ফাংশন হিসেবে কাজ করে।

2. **ভেরিয়েবল ধরন:** ফাংশনটি অন্য একটি ফাংশনের ভিতরে ডিফাইন করা হলে, অভ্যন্তরীণ ফাংশনটি বাইরের ফাংশনের ভেরিয়েবলগুলোতে অ্যাক্সেস করতে পারে।

3. **পরিবেশ সংরক্ষণ:** যখন বাইরের ফাংশনটির এক্সিকিউশন শেষ হয়, তখনও অভ্যন্তরীণ ফাংশনটি বাইরের ভেরিয়েবলগুলির একটি রেফারেন্স রাখে।

### উদাহরণ:

```javascript

function outerFunction() {

    let outerVariable = 'I am from outer function';

    function innerFunction() {

        console.log(outerVariable); // এখানে outerVariable অ্যাক্সেস করা হচ্ছে

    }

    return innerFunction; // innerFunction কে রিটার্ন করা হচ্ছে

}

const inner = outerFunction(); // outerFunction কল হলো এবং innerFunction ফিরিয়ে দিল

inner(); // মুদ্রণ করবে: "I am from outer function"

```

### উপসংহার:

- Closures ব্যবহার করে আপনি প্রাইভেট ভেরিয়েবলগুলির সাথে কাজ করতে পারেন। এটি ডেটা এনকapsulation এর জন্য ব্যবহৃত হয়।

- Closures কোটার মধ্যে (callbacks) ব্যবহার করা সহজ এবং প্রতিজ্ঞা (promises) অথবা অ্যাসিঙ্ক্রোনাস কাজের জন্য বিশেষ করে কার্যকরী।

### কখন ব্যবহৃত হয়:

- ফাংশনের মধ্যে ডেটা প্রোটেকশনের জন্য।

- ফাঙ্কশনের রিটার্নের মাধ্যমে নতুন ফাংশন তৈরি করার জন্য।

- ইভেন্ট হ্যান্ডলার বা অ্যাসিঙ্ক্রোনাস কাজের ক্ষেত্রে স্টেট রক্ষণাবেক্ষণের জন্য।

Closure এর মাধ্যমে JavaScript-এর কার্যকারিতা এবং ফাংশনাল কম্পিউটেশন আরও বিস্তৃত ও শক্তিশালী হয়।

এরকম আরও কিছু প্রশ্ন

1 টি উত্তর
1 টি উত্তর
0 টি উত্তর

36,285 টি প্রশ্ন

35,495 টি উত্তর

1,742 টি মন্তব্য

3,816 জন সদস্য

Ask Answers সাইটে আপনাকে সুস্বাগতম! এখানে আপনি প্রশ্ন করতে পারবেন এবং অন্যদের প্রশ্নে উত্তর প্রদান করতে পারবেন ৷ আর অনলাইনে বিভিন্ন সমস্যার সমাধানের জন্য উন্মুক্ত তথ্যভাণ্ডার গড়ে তোলার কাজে অবদান রাখতে পারবেন ৷
14 জন অনলাইনে আছেন
0 জন সদস্য, 14 জন অতিথি
আজকে ভিজিট : 1320
গতকাল ভিজিট : 31276
সর্বমোট ভিজিট : 53537401
এখানে প্রকাশিত সকল প্রশ্ন ও উত্তরের দায়ভার কেবল সংশ্লিষ্ট প্রশ্নকর্তা ও উত্তর দানকারীর৷ কোন প্রকার আইনি সমস্যা Ask Answers কর্তৃপক্ষ বহন করবে না৷
...