প্রক্সি()
ECMAScript 6 দ্বারা প্রবর্তিত নতুন বৈশিষ্ট্যগুলির মধ্যে একটি৷ হল প্রক্সি() বস্তু প্রক্সি()৷ মৌলিক ক্রিয়াকলাপগুলির জন্য কাস্টম আচরণকে সংজ্ঞায়িত করতে অবজেক্ট ব্যবহার করা হয় (যেমন সম্পত্তির সন্ধান, অ্যাসাইনমেন্ট, গণনা, ফাংশন আহ্বান, ইত্যাদি)।
প্রক্সি()৷ অবজেক্টে 3টি মূল পদ রয়েছে
1) হ্যান্ডলার - এটি একটি স্থানধারক বস্তু যাতে ফাঁদ থাকে।
2) ফাঁদ - ফাঁদ সম্পত্তি অ্যাক্সেস প্রদান করে।
3) লক্ষ্য - এটি একটি বস্তু, যা প্রক্সি ভার্চুয়ালাইজ করে।
সিনট্যাক্স
var p = new Proxy(target, handler);
নিম্নলিখিত উদাহরণে, 'p' নামক একটি বস্তু আছে এবং এর কিছু বৈশিষ্ট্য রয়েছে। যখন আমরা অবজেক্টে সংজ্ঞায়িত না থাকা বৈশিষ্ট্যগুলি চালানোর চেষ্টা করি তখন আউটপুটে দেখানো হিসাবে undefined কার্যকর করা হবে।
উদাহরণ
<html> <body> <script> var p = { Name: 'Ram kumar', Age: 27 }; document.write(person.Name); document.write("</br>"); document.write(person.Age); document.write("</br>"); document.write(person.designation); </script> </body> </html>
আউটপুট
Ram kumar 27 undefined
যখন proxy() ব্যবহার করলে আমরা অনির্ধারিত আউটপুট দূর করতে পারি। প্রক্সি()৷ "get ব্যবহার করে অজানা সম্পত্তি ফাঁদে ফেলার চেষ্টা করে " কীওয়ার্ড। হ্যান্ডলার, যা একটি প্রক্সি() এর ভিতরে সংজ্ঞায়িত করা হয় , লক্ষ্য পাস করবে এবং "পান-এ অনুরোধ করা কী নাম "ফাঁদ।
নিম্নলিখিত উদাহরণে প্রাথমিকভাবে অবজেক্ট 'p'-এর কোনো পদবী এবং ভূমিকা নেই। কিন্তু পরে যখন proxy() ছবিতে এসেছে, বস্তু এবং এর বৈশিষ্ট্যগুলি 'get ব্যবহার করে আটকে গেছে৷ ' এবং অনির্ধারিত বৈশিষ্ট্যগুলি আউটপুটে দেখানো হিসাবে প্রদর্শিত হয়েছিল।
উদাহরণ
<html> <body> <script> var p = { Name: 'Ram kumar', Age: 27 }; var handler = { get: function(target, prop) { return prop in target ? target[prop] : 'Content developer'; } }; var prox = new Proxy(p, handler); document.write(prox.Name); document.write("</br>"); document.write(prox.Age); document.write("</br>"); document.write(prox.designation); document.write("</br>"); document.write(prox.role); </script> </body> </html>
আউটপুট
Ram kumar 27 content developer content developer