কম্পিউটার

জাভাস্ক্রিপ্টে একটি বস্তুকে গভীর ক্লোন করার সবচেয়ে কার্যকর উপায় কী?


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

সবচেয়ে সহজ উপায় হল বস্তুটিকে 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. একটি MySQL টেবিলে একটি সারির উপস্থিতি পরীক্ষা করার সবচেয়ে কার্যকর উপায় কি?