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

জাভাস্ক্রিপ্টে Object.seal() এবং Object.freeze() এর পার্থক্য


Object.seal() এবং Object.freeze()-এর পার্থক্য হলো, সিল (seal) করা অবজেক্টের বিদ্যমান প্রোপার্টি পরিবর্তন করা যায়, কিন্তু ফ্রিজ (freeze) করা অবজেক্টের যেকোনো পরিবর্তন (মিনিটলেও) করা যায় না। Object.freeze() অবজেক্টকে যেকোনো পরিবর্তনের ক্ষেত্রে ইমিউন (immune) করে দেয়।

Object.seal()

Object.seal() মেথড বিদ্যমান প্রোপার্টি ডিলিট করা বাধা দেয়, কিন্তু বিদ্যমান প্রোপার্টিগুলো বাইরের পরিবর্তন থেকে রক্ষা করতে পারে না।

উদাহরণ

নিচের উদাহরণে, Object.seal() মেথডের কারণে ইউজার-ডিফাইনড প্রোপার্টি "prop1" ডিলিট মেথড 적용 করলেও ডিলিট হয়নি, তবে এর মান আপডেট হয়ে গেছে।

<html> <body> <script> var object1 = { prop1: 1 }; Object.seal(object1); object1.prop1 = 2; // value got changed delete object1.prop1; document.write(object1.prop1); // it gives value as 2 because of seal. </script> </body> </html>

আউটপুট

2


Object.freeze()

Object.seal()-এর ফাংশনালিটির পাশাপাশি, Object.freeze() মেথড অবজেক্টের বিদ্যমান প্রোপার্টিতে যেকোনো ছোটো পরিবর্তনও অনুমতি দেয় না।

উদাহরণ

<html> <body> <script> var object1 = { prop1: 1 }; Object.freeze(object1); object1.prop1 = 2; // value got updated delete object1.prop1; // value got deleted document.write(object1.prop1); // it gives 1 as output despite value updated to 2 </script> </body> </html>

আউটপুট

1
  1. জাভাস্ক্রিপ্টে ফাংশন ও মেথডের পার্থক্য

  2. জাভাস্ক্রিপ্টে `new Object()` এবং অবজেক্ট লিটারেল নোটেশনের পার্থক্য

  3. JspWriter এবং PrintWriter-এর পার্থক্য

  4. জাভা এবং জাভাস্ক্রিপ্টের মধ্যে পার্থক্য কী?