কম্পিউটার

আপনি কিভাবে জাভাস্ক্রিপ্টে একটি অবজেক্ট গভীর অনুলিপি করবেন?


একটি বস্তুর একটি গভীর অনুলিপি আমরা অনুলিপি করতে চাই বস্তুর মধ্যে এটি সম্মুখীন প্রতিটি বস্তুর নকল করে। অনুলিপি এবং আসল বস্তু কিছুই ভাগ করবে না, তাই এটি মূলের একটি অনুলিপি হবে।

সবচেয়ে সহজ উপায় হল বস্তুটিকে JSON স্ট্রিং-এ রূপান্তর করা এবং এটিকে আবার JS অবজেক্টে রূপান্তর করা। এই ভাবে অবশ্য পদ্ধতি অনুলিপি করার অনুমতি দেয় না৷

উদাহরণ

let obj = {
   foo: 1,
   bar: { baz: 'test' }
}
let newObj = JSON.parse(JSON.stringify(obj));
obj.bar.baz = 20;
console.log(obj);
console.log(newObj);

আউটপুট

{ foo: 1, bar: { baz: 20 } }  
{ foo: 1, bar: { baz: 'test' } } 

এখানে নতুন ওবজে আসল অবজেকে আপডেট করার সাথে পরিবর্তিত হয় না, তাই গভীর অনুলিপি সফল হয়েছে।


  1. কিভাবে জাভাস্ক্রিপ্ট অবজেক্টে একটি স্ট্রিং রূপান্তর করবেন?

  2. জাভাস্ক্রিপ্টে একটি আমদানি করা বস্তুকে কীভাবে ডি-স্ট্রাকচার করবেন?

  3. কিভাবে একটি বহুমাত্রিক জাভাস্ক্রিপ্ট অবজেক্ট তৈরি করবেন?

  4. আপনি কিভাবে .NET এ একটি বস্তুর একটি গভীর অনুলিপি করবেন?