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

জাভাস্ক্রিপ্টে পিউর ফাংশন (Pure Function) কী?


পিউর ফাংশন

একটি পিউর ফাংশন হলো একটি ডিটারমিনিস্টিক ফাংশন। এর মানে একই ইনপুট বারবার দিলে ফাংশন একই আউটপুট রিটার্ন করবে। গাণিতিক ভাষায় এটি একটি ওয়েল-ডিফাইনড ফাংশন।

একটি পিউর ফাংশন-এর নিচের বৈশিষ্ট্যগুলো থাকে:

  • এটি শুধু নিজস্ব আর্গুমেন্টের উপর নির্ভরশীল।

  • এটি নিজের স্কোপের বাইরের ভ্যারিয়েবল পরিবর্তন করার চেষ্টা করে না।

  • এটি কোনো সাইড ইফেক্ট উৎপন্ন করে না।

নিচের উদাহরণটি পিউর ফাংশন নয় কারণ এটি নিজস্ব ভ্যারিয়েবলের পরিবর্তে বাইরের ভ্যারিয়েবল (val1 এবং val2) এর উপর নির্ভরশীল।

উদাহরণ

<html> <body> <script>    let val1 = 6;    let val2 = 4;    function pure() {       return val1 * val2;    }    document.write(pure()); </script> </body> </html>

আউটপুট

24


নিচের উদাহরণে ফাংশন নিজস্ব আর্গুমেন্টের উপর নির্ভর করলেও বাইরের ভ্যারিয়েবল (val) ব্যবহার করছে। তাই এটি পিউর ফাংশন নয়।

উদাহরণ

<html> <body> <script>    function pure(arg) {       let val = 100;       return val* arg;    }    document.write(pure(2)); </script> </body> </html>

আউটপুট

200


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

উদাহরণ

<html> <body>    <script>       function pure(arg) {          return 4 * arg;       }       document.write(pure(2));    </script> </body> </html>

আউটপুট

8
  1. জাভাস্ক্রিপ্টে setTimeout() মেথড কী?

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

  3. জাভাস্ক্রিপ্টে ফাংশন এক্সপ্রেশন কী?

  4. জাভাস্ক্রিপ্টে ক্লোジャー (Closures) কী?