আপনি lodash.isequal
যেমন সম্পূর্ণ লোডাশ প্যাকেজ ইনস্টল না করে একটি একক মডিউল হিসাবে ইনস্টল করতে পারেন:
npm install --save lodash.isequal
ECMAScript 5 এবং কমনজেএস মডিউলগুলি ব্যবহার করার পরে, আপনি এটির পরে এটি আমদানি করুন:
var isEqual = require('lodash.isequal');
ES6 মডিউলগুলি ব্যবহার করে, এটি হ'ল:
import isEqual from 'lodash.isequal';
এবং আপনি এটি আপনার কোডটিতে ব্যবহার করতে পারেন:
const obj1 = {username: 'peter'};
const obj2 = {username: 'peter'};
const obj3 = {username: 'gregory'};
isEqual(obj1, obj2) // returns true
isEqual(obj1, obj3) // returns false
সূত্র: লোডাশ ডকুমেন্টেশন
আমদানির পরে, আপনি আপনার কোডটিতে isEqual
ফাংশনটি ব্যবহার করতে পারেন । মনে রাখবেন যে নামে একটি বস্তুর অংশ নয় _
যদি আপনি এটি এই ভাবে আমদানি করতে, যাতে আপনি
না এটি দিয়ে রেফারেন্স _.isEqual
সঙ্গে, কিন্তু সরাসরি isEqual
।
বিকল্প: ব্যবহার lodash-es
@ কিমামুলা দ্বারা চিহ্নিত হিসাবে :
ওয়েবপ্যাক 4 এবং লোড্যাশ-এস 4.17.7 এবং উচ্চতর সহ, এই কোডটি কাজ করে।
import { isEqual } from 'lodash-es';
এর কারণ হ'ল ওয়েবপ্যাক 4 সাইডএফেক্টস পতাকাটি সমর্থন করে এবং lodash-es
4.17.7 এবং উচ্চতর পতাকাটি (যা সেট করা আছে false
) অন্তর্ভুক্ত।
স্ল্যাশ সহ সংস্করণটি ব্যবহার করবেন না কেন?
এই প্রশ্নের অন্যান্য উত্তরগুলি থেকে বোঝা যায় যে আপনি কোনও বিন্দুর পরিবর্তে ড্যাশও ব্যবহার করতে পারেন:
import isEqual from 'lodash/isequal';
এটিও কার্যকর, তবে দুটি ছোট ছোট অপূর্ণতা রয়েছে:
- আপনাকে পুরো লড্যাশ প্যাকেজটি ইনস্টল করতে হবে (
npm install --save lodash
কেবলমাত্র পৃথক ছোট লড্যাশ.ইসিকিওল প্যাকেজ নয়; স্টোরেজ স্পেস সস্তা এবং সিপিইউ দ্রুত, তাই আপনি এটি সম্পর্কে যত্ন নিতে পারেন না
- ওয়েবপ্যাকের মতো সরঞ্জামগুলি ব্যবহার করার সময় ফলাফলযুক্ত বান্ডিলটি কিছুটা বড় হবে; আমি জানতে পেরেছি যে ন্যূনতম কোড উদাহরণ সহ বান্ডিল আকারগুলি
isEqual
হ'ল গড়ে 28% বড় (চেষ্টা করা ওয়েবপ্যাক 2 এবং ওয়েবপ্যাক 3, বাবেলের সাথে বা ছাড়া, উগ্লিফাইয়ের সাথে বা ছাড়া)