আমাদের একটি প্রোগ্রাম (ফাংশন) লিখতে হবে যা একটি অবজেক্ট রেফারেন্স নেবে এবং সেই অবজেক্টে থাকা সব মেথড (মেম্বার ফাংশন) এর একটি অ্যারে রিটার্ন করবে। আমরা শুধু মেথডগুলো রিটার্ন করব, অন্য কোনো প্রপার্টি যেটির টাইপ ফাংশন নয় সেটি না।
আমরা Object.getOwnPropertyNames ফাংশন ব্যবহার করব।
Object.getOwnPropertyNames() মেথড একটি দिये गये অবজেক্টে সরাসরি পাওয়া সব প্রপার্টি (এনামারেবল বা নন-এনামারেবল) এর একটি অ্যারে রিটার্ন করে। তারপর আমরা অ্যারেটি ফিল্টার করে শুধু 'function' টাইপের প্রপার্টি রাখব।
উদাহরণ
const returnMethods = (obj = {}) => {
const members = Object.getOwnPropertyNames(obj);
const methods = members.filter(el => {
return typeof obj[el] === 'function';
})
return methods;
};
console.log(returnMethods(Array.prototype));
আউটপুট
কনসোলে আউটপুট হবে:
[ 'constructor', 'concat', 'copyWithin', 'fill', 'find', 'findIndex', 'lastIndexOf', 'pop', 'push', 'reverse', 'shift', 'unshift', 'slice', 'sort', 'splice', 'includes', 'indexOf', 'join', 'keys', 'entries', 'values', 'forEach', 'filter', 'flat', 'flatMap', 'map', 'every', 'some', 'reduce', 'reduceRight', 'toLocaleString', 'toString' ]