কম্পিউটার

জাভাস্ক্রিপ্টে মান অনুসারে বস্তু অনুসন্ধান করা হচ্ছে


ধরুন আমাদের কাছে এরকম একটা বস্তু আছে −

const obj = {
   "name": "Vivek Sharma",
   "occupation": "Software Engineer",
   "age": 23,
   "contacts": [{
      "name": "Mukul Sharma",
      "occupation": "Software Engineer",
      "age": 31,
   }, {
      "name": "Jay Sharma",
      "occupation": "Software Engineer",
      "age": 27,
   }, {
      "name": "Rajan Sharma",
      "occupation": "Software Engineer",
      "age": 32,
   }]
};

এখানে এটি শুধুমাত্র একটি স্তর পর্যন্ত বাসা বাঁধে, তবে বাসাটি আরও গভীর হতে পারে। আমাদের একটি অবজেক্ট ফাংশন Object.prototype.keysOf() লিখতে হবে যা একটি মান নেয় এবং আর্গুমেন্টে নির্দিষ্ট মান আছে এমন সমস্ত কীগুলির একটি অ্যারে প্রদান করে৷

তো, এখন এই ফাংশনের জন্য কোড লিখি −

উদাহরণ

const obj = {
   "name": "Vivek Sharma",
   "occupation": "Software Engineer",
   "age": 23,
   "contacts": [{
      "name": "Mukul Sharma",
      "occupation": "Software Engineer",
      "age": 31,
   }, {
      "name": "Jay Sharma",
      "occupation": "Software Engineer",
      "age": 27,
   }, {
         "name": "Rajan Sharma",
         "occupation": "Software Engineer",
         "age": 32,
      }]
   };
   const keysOf = function(val, obj = this, res = []){
      const keys = Object.keys(obj);
      for(let ind = 0; ind < keys.length; ind++){
         if(obj[keys[ind]] === val){
            res.push(keys[ind]);
         }else if(typeof obj[keys[ind]] === 'object' &&
         !Array.isArray(obj[keys[ind]])){
            keysOf(val, obj[keys[ind]], res);
      };
   };
   return res;
};
Object.prototype.keysOf = keysOf;
console.log(obj.keysOf(23));

আউটপুট

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

['age']

  1. জাভাস্ক্রিপ্টে অনির্ধারিত

  2. জাভাস্ক্রিপ্টে বস্তুর সমতা ব্যাখ্যা কর।

  3. জাভাস্ক্রিপ্টে একটি মানের উপর ভিত্তি করে বস্তুগুলিকে কীভাবে গ্রুপ করবেন?

  4. 2টি বস্তুর তুলনা করার সময় গ্রুপিং অ্যারে নেস্টেড মান - জাভাস্ক্রিপ্ট