জাভা স্ক্রিপ্টে 'কারিং' এবং 'ক্লোজার' এর মধ্যে কোনও পার্থক্য রয়েছে কি?


উত্তর 1:

একটি ক্লোজার তৈরি করা কোনও ফাংশনের সুযোগের বাইরে চলক অ্যাক্সেস করা ছাড়া আর কিছুই নয় nothing দয়া করে মনে রাখবেন যে কোনও ফাংশনের অভ্যন্তরে কোনও ক্রিয়াকলাপ বন্ধ নয়। ফাংশন স্কোপের বাইরে ভেরিয়েবলগুলি অ্যাক্সেস করার প্রয়োজনে বন্ধগুলি সর্বদা ব্যবহৃত হয়।

এখানে ক্লোজারগুলির উদাহরণ রয়েছে

কার্য়িং এন আর্গুমেন্টের একক ফাংশনকে একক যুক্তির সাহায্যে এন ফাংশনে রূপান্তর করছে। সুতরাং আপনি বলতে পারেন কার্যিং একটি যুক্তির কার্যকারিতা থেকে একাধিক যুক্তির ফাংশন হ্রাস করার একটি উপায়।

জাভাস্ক্রিপ্টে কারিটিং ফাংশনের উদাহরণ এখানে

কারিটিং ফাংশন সমাপ্তির সম্পত্তি ব্যবহার করে।


উত্তর 2:

অন্যান্য উত্তরগুলি সঠিক, কারিরিং এবং ক্লোজার দুটি পৃথক ধারণা। যাইহোক, তারা এই অর্থে সম্পর্কিত যে উভয় একই জিনিস কিছু অর্জন করতে ব্যবহার করা যেতে পারে।

আংশিক প্রয়োগের মতো একই কার্যকারিতা সম্পাদনের জন্য নীচের বন্ধটি উদাহরণস্বরূপ নিন

কনস্ট মেকএএডার (এক্স) {
রিটার্ন (y) => {
x + y রিটার্ন করুন
}
}

কনস্ট add9 = MakeAdder (9)
কনসোল.লগ (যোগ 9 (2)) // 11

এটি প্রায়শই এর মতো কারিং করার মাধ্যমে সম্পন্ন হয় (ramda.js ব্যবহার করে)

কনট মেকএএডার = (x, y) =>
 x + y রিটার্ন করুন
}
কনস্ট ক্রেডিডমেকএডডার = আর.সি.উরি (মেকএডডার)
কনস্ট অ্যাড 9 = কারিডমেকএড্ডার (9)
কনসোল.লগ (যোগ 9 (2)) // 11

সুতরাং হ্যাঁ, দুটি ভিন্ন ধারণা, তবে প্রোগ্রামিংয়ে বিভিন্ন ধারণার মতো একই কাজটি সম্পাদন করার বিভিন্ন উপায় রয়েছে। এমনকি পদ্ধতিগুলি একইরকম হলেও হুডের নীচে অনেক আলাদা চলছে।


উত্তর 3:

অন্যান্য উত্তরগুলি সঠিক, কারিরিং এবং ক্লোজার দুটি পৃথক ধারণা। যাইহোক, তারা এই অর্থে সম্পর্কিত যে উভয় একই জিনিস কিছু অর্জন করতে ব্যবহার করা যেতে পারে।

আংশিক প্রয়োগের মতো একই কার্যকারিতা সম্পাদনের জন্য নীচের বন্ধটি উদাহরণস্বরূপ নিন

কনস্ট মেকএএডার (এক্স) {
রিটার্ন (y) => {
x + y রিটার্ন করুন
}
}

কনস্ট add9 = MakeAdder (9)
কনসোল.লগ (যোগ 9 (2)) // 11

এটি প্রায়শই এর মতো কারিং করার মাধ্যমে সম্পন্ন হয় (ramda.js ব্যবহার করে)

কনট মেকএএডার = (x, y) =>
 x + y রিটার্ন করুন
}
কনস্ট ক্রেডিডমেকএডডার = আর.সি.উরি (মেকএডডার)
কনস্ট অ্যাড 9 = কারিডমেকএড্ডার (9)
কনসোল.লগ (যোগ 9 (2)) // 11

সুতরাং হ্যাঁ, দুটি ভিন্ন ধারণা, তবে প্রোগ্রামিংয়ে বিভিন্ন ধারণার মতো একই কাজটি সম্পাদন করার বিভিন্ন উপায় রয়েছে। এমনকি পদ্ধতিগুলি একইরকম হলেও হুডের নীচে অনেক আলাদা চলছে।


উত্তর 4:

অন্যান্য উত্তরগুলি সঠিক, কারিরিং এবং ক্লোজার দুটি পৃথক ধারণা। যাইহোক, তারা এই অর্থে সম্পর্কিত যে উভয় একই জিনিস কিছু অর্জন করতে ব্যবহার করা যেতে পারে।

আংশিক প্রয়োগের মতো একই কার্যকারিতা সম্পাদনের জন্য নীচের বন্ধটি উদাহরণস্বরূপ নিন

কনস্ট মেকএএডার (এক্স) {
রিটার্ন (y) => {
x + y রিটার্ন করুন
}
}

কনস্ট add9 = MakeAdder (9)
কনসোল.লগ (যোগ 9 (2)) // 11

এটি প্রায়শই এর মতো কারিং করার মাধ্যমে সম্পন্ন হয় (ramda.js ব্যবহার করে)

কনট মেকএএডার = (x, y) =>
 x + y রিটার্ন করুন
}
কনস্ট ক্রেডিডমেকএডডার = আর.সি.উরি (মেকএডডার)
কনস্ট অ্যাড 9 = কারিডমেকএড্ডার (9)
কনসোল.লগ (যোগ 9 (2)) // 11

সুতরাং হ্যাঁ, দুটি ভিন্ন ধারণা, তবে প্রোগ্রামিংয়ে বিভিন্ন ধারণার মতো একই কাজটি সম্পাদন করার বিভিন্ন উপায় রয়েছে। এমনকি পদ্ধতিগুলি একইরকম হলেও হুডের নীচে অনেক আলাদা চলছে।