কম্পিউটার

জাভাস্ক্রিপ্টে initValidation() ফাংশনের বাইরে আমি validate() ফাংশনটিকে কল করতে পারি এমন কোন উপায় আছে কি?


আমরা initValidation() এর বাইরে ফাংশনটিকে validate() কল করতে চাই, অগত্যা initValidation()

নিম্নলিখিত আমাদের সমস্যা কোড -

function initValidation(){
   // irrelevant code here
   function validate(_block){
      // code here
   }
}

জাভাস্ক্রিপ্টে, যেমন আমরা জানি যে ফাংশনগুলি বস্তু ছাড়া কিছুই নয়, তাই এটি অর্জন করতে আমরা আমাদের কোডকে এভাবে পরিবর্তন করতে পারি না -

function initValidation(){
   // irrelevant code here
   function validate(_block){
      // code here
      console.log(_block);
   }
   this.validate = validate;
}

এই টুইকটি যা করে তা হল এটি আমাদের অভিভাবক ফাংশনকে এখন একটি শ্রেণির প্রতিনিধিত্ব করে, যার মধ্যে ভ্যালিডেট একটি সম্পত্তি এবং আমরা এটিকে এভাবে অ্যাক্সেস করতে পারি -

const v = new initValidation();
v.validate('Hello world');

আউটপুট −

সহ সম্পূর্ণ কোড নিচে দেওয়া হল

উদাহরণ

function initValidation(){
   // irrelevant code here
   function validate(_block){
      // code here
      console.log(_block);
   }
   this.validate = validate;
}
const v = new initValidation();
v.validate('Hello world');

আউটপুট

কনসোলে আউটপুট হবে −

Hello world

  1. জাভাস্ক্রিপ্ট ফাংশন কল

  2. আমি একটি জাভাস্ক্রিপ্ট ত্রুটি প্রসারিত করতে পারি? এটা করার সেরা উপায় কি?

  3. কেন আমার HTML ফাইল একটি উৎস মডিউল থেকে জাভাস্ক্রিপ্ট ফাংশন খুঁজে পেতে পারে না?

  4. জাভাস্ক্রিপ্টে একটি বস্তু বা অ্যারেতে একটি নাল মান আছে কিনা তা পরীক্ষা করার কোন উপায় আছে কি?