আইএমও এটি যা আপনি সন্ধান করছেন তা সম্পাদন করার সহজতম উপায়:
let { prop1, prop2, prop3 } = someObject;
let data = { prop1, prop2, prop3 };
// data === { prop1: someObject.prop1, ... }
মূলত, ভেরিয়েবলগুলিতে ডেস্ট্রাকচার এবং তারপরে একটি নতুন অবজেক্ট তৈরি করতে ইনিশিয়ালাইজার শর্টহ্যান্ড ব্যবহার করুন। দরকার নেইObject.assign
আমি মনে করি এটি যাইহোক, সবচেয়ে পঠনযোগ্য উপায়। আপনি someObject
চান তা থেকে যথাযথ প্রপসগুলি এখানে নির্বাচন করতে পারেন। আপনার যদি কোনও বিদ্যমান অবজেক্ট থাকে তবে আপনি কেবল প্রপসগুলিকে মার্জ করতে চান, এই জাতীয় কিছু করুন:
let { prop1, prop2, prop3 } = someObject;
let data = Object.assign(otherObject, { prop1, prop2, prop3 });
// Makes a new copy, or...
Object.assign(otherObject, { prop1, prop2, prop3 });
// Merges into otherObject
আরেকটি, যুক্তিযুক্তভাবে পরিষ্কার, এটি লেখার উপায় হ'ল:
let { prop1, prop2, prop3 } = someObject;
let newObject = { prop1, prop2, prop3 };
// Merges your selected props into otherObject
Object.assign(otherObject, newObject);
আমি এটি POST
অনুরোধগুলির জন্য অনেকটা ব্যবহার করি যেখানে আমার কেবল কয়েকটি পৃথক ডেটা প্রয়োজন। তবে আমি সম্মত হই যে এটি করার জন্য একটি লাইনার থাকা উচিত।
সম্পাদনা: পিএস -
আমি সম্প্রতি শিখেছি আপনি জটিল পদক্ষেপের বাইরে নেস্টেড মানগুলি টানতে প্রথম ধাপে আল্ট্রা ডেস্ট্রাকচারিং ব্যবহার করতে পারেন! এই ক্ষেত্রে...
let { prop1,
prop2: { somethingDeeper },
prop3: {
nested1: {
nested2
}
} = someObject;
let data = { prop1, somethingDeeper, nested2 };
এছাড়াও, আপনি নতুন অবজেক্ট তৈরি করার সময় Object.assign এর পরিবর্তে স্প্রেড অপারেটর ব্যবহার করতে পারেন:
const { prop1, prop2, prop3 } = someObject;
let finalObject = {...otherObject, prop1, prop2, prop3 };
অথবা ...
const { prop1, prop2, prop3 } = someObject;
const intermediateObject = { prop1, prop2, prop3 };
const finalObject = {...otherObject, ...intermediateObject };
Object.assign(oof, foo)