$lang['tuto'] = "টিউটোরিয়াল"; ?>$lang['tuto'] = "টিউটোরিয়াল"; ?> শর্তসাপেক্ষ চেক ছাড়া

শর্তসাপেক্ষ চেক ছাড়া জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি পুনরাবৃত্তি অপ্টিমাইজ করা

Temp mail SuperHeros
শর্তসাপেক্ষ চেক ছাড়া জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি পুনরাবৃত্তি অপ্টিমাইজ করা
শর্তসাপেক্ষ চেক ছাড়া জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি পুনরাবৃত্তি অপ্টিমাইজ করা

জাভাস্ক্রিপ্টে অবজেক্ট-ওরিয়েন্টেড প্রপার্টি পুনরাবৃত্তি আয়ত্ত করা

জাভাস্ক্রিপ্টের সাথে কাজ করার সময়, একটি অবজেক্ট-ওরিয়েন্টেড পদ্ধতি অবলম্বন করা আপনার কোডকে আরও সংগঠিত এবং বজায় রাখতে পারে। একটি সাধারণ প্যাটার্ন হল এই বৈশিষ্ট্যগুলিকে ম্যানিপুলেট করে এমন পদ্ধতিগুলির পাশাপাশি বস্তুগুলিতে সম্পর্কিত বৈশিষ্ট্যগুলিকে গোষ্ঠীবদ্ধ করা৷ যাইহোক, এটি প্রায়শই চ্যালেঞ্জের দিকে নিয়ে যায় যখন পদ্ধতিগুলি অনিচ্ছাকৃতভাবে পুনরাবৃত্তির সময় বৈশিষ্ট্যগুলিতে হস্তক্ষেপ করে।

একটি সাধারণ উদাহরণ ব্যবহার করা জড়িত Object.keys() একটি বস্তুর বৈশিষ্ট্যের উপর পুনরাবৃত্তি করতে। বিকাশকারীরা প্রায়শই এই পুনরাবৃত্তির সময় পদ্ধতিগুলি বাদ দেওয়ার প্রয়োজনের মুখোমুখি হন। এর জন্য ফাংশনগুলি এড়িয়ে যাওয়ার জন্য একটি শর্তসাপেক্ষ ধারা যোগ করা প্রয়োজন, যা জটিল পরিস্থিতিতে কোডটিকে আরও জটিল এবং বজায় রাখা কঠিন করে তুলতে পারে।

একটি বিকল্প হল নেস্টেড অবজেক্টের অভ্যন্তরে বৈশিষ্ট্যগুলিকে গোষ্ঠীভুক্ত করা, তাদের পদ্ধতিগুলি থেকে বিচ্ছিন্ন করা। যদিও এটি অনিচ্ছাকৃত মিথস্ক্রিয়া কমাতে সাহায্য করে, এটি আরও জটিল রেফারেন্সিং প্রবর্তন করে, যেমন এর মাধ্যমে বৈশিষ্ট্যগুলি অ্যাক্সেস করা myObj.props.prop1 পরিবর্তে myObj.prop1. কোড পঠনযোগ্যতা এবং কার্যকারিতার মধ্যে এই ট্রেড-অফ বিকাশকারীদের জন্য একটি আকর্ষণীয় দ্বিধা তৈরি করে।

এই নিবন্ধে, আমরা কোড মার্জিত এবং দক্ষ রেখে এই চ্যালেঞ্জগুলি পরিচালনা করার ব্যবহারিক উপায়গুলি অন্বেষণ করব। আমরা শর্তসাপেক্ষে খুব বেশি নির্ভর না করে বস্তুর বৈশিষ্ট্যের উপর পুনরাবৃত্তি করার জন্য বিভিন্ন কৌশলগুলি দেখব। শেষ পর্যন্ত, আপনি আরও অবজেক্ট-ভিত্তিক ফ্যাশনে অবজেক্ট গঠনের অন্তর্দৃষ্টি পাবেন যা অপ্রয়োজনীয় জটিলতাগুলি এড়িয়ে যায়।

আদেশ ব্যবহারের উদাহরণ
Object.defineProperty() একটি বস্তুর উপর একটি নতুন সম্পত্তি সংজ্ঞায়িত করে বা কনফিগারযোগ্য বিকল্পগুলির সাথে বিদ্যমান একটিকে সংশোধন করে যেমন গণনাযোগ্য এবং লিখনযোগ্য. আমাদের উদাহরণে, এটি সম্পত্তি পুনরাবৃত্তির সময় গণনা থেকে পদ্ধতিটি লুকিয়ে রাখে।
Symbol() একটি অনন্য এবং অপরিবর্তনীয় শনাক্তকারী তৈরি করে। আমরা একটি ব্যবহার প্রতীক পদ্ধতিতে একটি অ-গণনাযোগ্য কী বরাদ্দ করতে, এটি নিশ্চিত করে যে এটি সম্পত্তি পুনরাবৃত্তিতে হস্তক্ষেপ করবে না।
Object.entries() একটি প্রদত্ত বস্তুর নিজস্ব গণনাযোগ্য কী-মান জোড়ার একটি অ্যারে প্রদান করে। এটি একই সাথে উভয় কী এবং মানগুলির মাধ্যমে পুনরাবৃত্তি করতে সহায়তা করে, আমাদের দ্বিতীয় উদাহরণে বস্তুর বৈশিষ্ট্যগুলিকে সংশোধন করা সহজ করে তোলে।
forEach() একটি অ্যারের প্রতিটি উপাদানে একটি ফাংশন প্রয়োগ করে। স্ক্রিপ্টে, প্রত্যেকের জন্য() স্ট্রিং মানকে বড় হাতের অক্ষরে রূপান্তর করতে অবজেক্টের বৈশিষ্ট্যগুলি লুপ করতে ব্যবহৃত হয়।
class অবজেক্ট তৈরির জন্য একটি ব্লুপ্রিন্ট প্রবর্তন করে। ক্লাস-ভিত্তিক উদাহরণে, মাইঅবজেক্ট ক্লাস মডুলার, পুনঃব্যবহারযোগ্য কোডের জন্য ডেটা (বৈশিষ্ট্য) এবং আচরণ (পদ্ধতি) উভয়ই এনক্যাপসুলেট করে।
Object.keys() বস্তুর নিজস্ব গণনাযোগ্য বৈশিষ্ট্যগুলির একটি অ্যারে প্রদান করে। আমরা অ-গণনাযোগ্য পদ্ধতি উপেক্ষা করার সময় বস্তুর বৈশিষ্ট্যগুলিকে তালিকাভুক্ত করতে এবং পুনরাবৃত্তি করতে এটি ব্যবহার করেছি।
require() মডিউল আমদানি করতে Node.js এ ব্যবহৃত হয়। আমাদের জেস্ট পরীক্ষার উদাহরণে, প্রয়োজন('@jest/globals') পরীক্ষার মত জেস্ট ফাংশন আমদানি করে এবং ইউনিট পরীক্ষার জন্য প্রত্যাশা করে।
test() একটি পরীক্ষা ব্লক সংজ্ঞায়িত করার জন্য একটি জেস্ট ফাংশন। প্রতিটি পরীক্ষার ব্লক নির্দিষ্ট লজিক চালায় যাচাই করার জন্য যে আমাদের সম্পত্তি পুনরাবৃত্তি প্রত্যাশিত আচরণ করে আউটপুট পরীক্ষা করে প্রত্যাশা ().
expect() আরেকটি জেস্ট ফাংশন যা পরীক্ষা করে যে এক্সপ্রেশনের ফলাফল প্রত্যাশিত মানের সাথে মেলে কিনা। এটি আমাদের পদ্ধতিগুলি সঠিকভাবে বস্তুর বৈশিষ্ট্যগুলিকে রূপান্তরিত করে তা যাচাই করতে সহায়তা করে।

জাভাস্ক্রিপ্টে অবজেক্টের বৈশিষ্ট্যগুলি পুনরাবৃত্তি করার সমাধানগুলি অন্বেষণ করা

আমরা যে স্ক্রিপ্টগুলি তৈরি করেছি তার লক্ষ্য একটি সাধারণ সমস্যা সমাধান করা জাভাস্ক্রিপ্ট: অনিচ্ছাকৃতভাবে পরিবর্তন বা পদ্ধতির সাথে ইন্টারঅ্যাক্ট না করে কিভাবে বস্তুর বৈশিষ্ট্যের উপর পুনরাবৃত্তি করা যায়। প্রথম সমাধানে, আমরা ব্যবহার করি Object.defineProperty পদ্ধতি অ-গণনাযোগ্য করতে. এটি নিশ্চিত করে যে যখন আমরা অবজেক্টের বৈশিষ্ট্যগুলি ব্যবহার করে লুপ করি Object.keys(), পদ্ধতি পুনরাবৃত্তি থেকে বাদ দেওয়া হয়. এই পদ্ধতিটি আমাদের ডেটার অখণ্ডতা রক্ষা করে এবং লুপের মধ্যে অতিরিক্ত শর্তসাপেক্ষ চেকের প্রয়োজন এড়ায়।

আরেকটি মূল সমাধান ব্যবহার জড়িত ES6 চিহ্ন. চিহ্নগুলি গণনা বা পুনরাবৃত্তি প্রক্রিয়ায় হস্তক্ষেপ না করে বস্তুতে বৈশিষ্ট্য বা পদ্ধতি যোগ করার একটি উপায় প্রদান করে। আমাদের উদাহরণে, একটি সিম্বল কী-তে পদ্ধতি বরাদ্দ করা নিশ্চিত করে যে এটি লুকানো থাকবে Object.entries(), যা আমরা বস্তুর কী এবং মান উভয়ের উপর পুনরাবৃত্তি করতে ব্যবহার করি। এই কৌশলটি হাইলাইট করে যে কীভাবে প্রতীকগুলি বস্তু-ভিত্তিক জাভাস্ক্রিপ্টে বিশেষভাবে কার্যকর হতে পারে যখন নির্দিষ্ট বৈশিষ্ট্য বা পদ্ধতিগুলি পুনরাবৃত্তি যুক্তির কাছে অদৃশ্য থাকা উচিত।

আমরা একটি ব্যবহার অন্বেষণ ক্লাস বৈশিষ্ট্য এবং পদ্ধতিগুলিকে আরও আনুষ্ঠানিকভাবে আলাদা করতে। এই পদ্ধতিটি একটি একক কাঠামোর মধ্যে ডেটা (বৈশিষ্ট্য) এবং আচরণ (পদ্ধতি) উভয়কে এনক্যাপসুলেট করে বস্তু-ভিত্তিক নীতিগুলির সাথে সারিবদ্ধ করে। এই পদ্ধতিটি অবজেক্টের পুনঃব্যবহার এবং পরিবর্তনকে সহজ করে, ডেভেলপারদের পুনরায় কোড লেখা ছাড়াই ক্লাসের একাধিক দৃষ্টান্ত তৈরি করতে দেয়। এর ব্যবহার Object.keys() একটি শ্রেণী পদ্ধতির মধ্যে নিশ্চিত করে যে শুধুমাত্র বৈশিষ্ট্যগুলি প্রভাবিত হয়, রক্ষণাবেক্ষণযোগ্যতা এবং কোড পঠনযোগ্যতা উভয়ই বৃদ্ধি করে।

আমাদের সমাধানের চূড়ান্ত অংশটি পরীক্ষা করার উপর দৃষ্টি নিবদ্ধ করে ঠাট্টা, একটি জনপ্রিয় জাভাস্ক্রিপ্ট টেস্টিং ফ্রেমওয়ার্ক। আমাদের পুনরাবৃত্তি পদ্ধতি বিভিন্ন বাস্তবায়ন জুড়ে প্রত্যাশিতভাবে কাজ করে তা নিশ্চিত করার জন্য আমরা ইউনিট পরীক্ষা লিখেছি। জটিল বস্তুর সাথে কাজ করার সময় সম্ভাব্য বাগ বা অপ্রত্যাশিত আচরণ সনাক্ত করার জন্য এটি অত্যন্ত গুরুত্বপূর্ণ। মত ফাংশন ব্যবহার করে পরীক্ষা() এবং প্রত্যাশা () ইন জেস্ট শুধুমাত্র আমাদের কোডের সঠিকতা যাচাই করে না বরং পুঙ্খানুপুঙ্খ পরীক্ষাকে উত্সাহিত করে সফ্টওয়্যার বিকাশের সর্বোত্তম অনুশীলনের প্রচার করে।

প্রভাব পদ্ধতি ছাড়া অবজেক্ট বৈশিষ্ট্য মাধ্যমে পুনরাবৃত্তি

এই সমাধানটি গতিশীল ফ্রন্ট-এন্ড বিকাশের জন্য জাভাস্ক্রিপ্টের উপর দৃষ্টি নিবদ্ধ করে। এটি সম্পত্তি পুনরাবৃত্তি অপ্টিমাইজ করতে অবজেক্ট-ওরিয়েন্টেড ডিজাইন প্যাটার্নের সুবিধা দেয়, নিশ্চিত করে যে পদ্ধতিগুলি প্রভাবিত না হয়।

// Solution 1: Using Object.defineProperty to Hide Methods from Iteration
const myObj = {};
Object.defineProperty(myObj, 'prop1', { value: 'one', writable: true, enumerable: true });
Object.defineProperty(myObj, 'prop2', { value: 'two', writable: true, enumerable: true });
Object.defineProperty(myObj, 'myMethod', {
  value: function() {
    Object.keys(this).forEach(prop => {
      this[prop] = this[prop].toUpperCase();
    });
  },
  enumerable: false
});

console.log(myObj.prop1, myObj.prop2);
myObj.myMethod();
console.log(myObj.prop1, myObj.prop2);

পদ্ধতি লুকানোর জন্য প্রতীক সহ পুনরায় ব্যবহারযোগ্য মডুলার অবজেক্ট তৈরি করা

এই সমাধান ব্যবহার করে তোলে ES6 চিহ্ন গতিশীল জাভাস্ক্রিপ্ট বিকাশের জন্য, কাঠামো পরিষ্কার রাখার সময় অ-গণনাযোগ্য পদ্ধতির অনুমতি দেয়।

const METHOD_KEY = Symbol('myMethod');

const myObj = {
  prop1: 'one',
  prop2: 'two',
  [METHOD_KEY]: function() {
    Object.entries(this).forEach(([key, value]) => {
      if (typeof value === 'string') this[key] = value.toUpperCase();
    });
  }
};

console.log(myObj.prop1, myObj.prop2);
myObj[METHOD_KEY]();
console.log(myObj.prop1, myObj.prop2);

বস্তুর বৈশিষ্ট্য এবং পদ্ধতি পরিচালনা করার জন্য একটি পৃথক শ্রেণী ব্যবহার করা

এই পদ্ধতিটি জাভাস্ক্রিপ্টে যুক্তিকে বিভক্ত করে বস্তু-ভিত্তিক নীতিগুলি প্রদর্শন করে ক্লাস, বৈশিষ্ট্য থেকে পৃথক পদ্ধতি রাখা.

class MyObject {
  constructor() {
    this.prop1 = 'one';
    this.prop2 = 'two';
  }

  uppercaseProps() {
    Object.keys(this).forEach(key => {
      this[key] = this[key].toUpperCase();
    });
  }
}

const obj = new MyObject();
console.log(obj.prop1, obj.prop2);
obj.uppercaseProps();
console.log(obj.prop1, obj.prop2);

ইউনিট জেস্ট দিয়ে সমাধান পরীক্ষা করছে

এই বিভাগে লেখা প্রদর্শন করা হয় ইউনিট পরীক্ষা জেস্ট, একটি জনপ্রিয় জাভাস্ক্রিপ্ট টেস্টিং ফ্রেমওয়ার্ক ব্যবহার করে উপরের সমাধানগুলির সঠিকতা যাচাই করতে।

const { test, expect } = require('@jest/globals');

test('Solution 1: Should uppercase properties', () => {
  const obj = { prop1: 'one', prop2: 'two' };
  Object.keys(obj).forEach(key => obj[key] = obj[key].toUpperCase());
  expect(obj.prop1).toBe('ONE');
  expect(obj.prop2).toBe('TWO');
});

test('Solution 2: Should uppercase properties using class', () => {
  const obj = new MyObject();
  obj.uppercaseProps();
  expect(obj.prop1).toBe('ONE');
  expect(obj.prop2).toBe('TWO');
});

উন্নত জাভাস্ক্রিপ্ট প্যাটার্ন ব্যবহার করে অবজেক্ট ইটারেশন চ্যালেঞ্জ সমাধান করা

হ্যান্ডেল করার একটি আকর্ষণীয় উপায় অবজেক্ট ওরিয়েন্টেড জাভাস্ক্রিপ্ট চ্যালেঞ্জ ব্যবহার করে হয় প্রোটোটাইপ. জাভাস্ক্রিপ্ট অবজেক্টগুলি প্রায়শই প্রোটোটাইপের সাথে সংযুক্ত থাকে, যা বিকাশকারীদের দৃষ্টান্ত জুড়ে ভাগ করা পদ্ধতিগুলিকে সংজ্ঞায়িত করতে দেয়। প্রোটোটাইপের ভিতরে পুনরায় ব্যবহারযোগ্য পদ্ধতি স্থাপন করে, তারা সম্পত্তি পুনরাবৃত্তিতে হস্তক্ষেপ করবে না। এই কৌশলটি নিশ্চিত করে যে শুধুমাত্র বস্তুর সাথে সরাসরি সংযুক্ত বৈশিষ্ট্যগুলি ব্যবহার করার সময় পরিবর্তন করা হয় Object.keys() বা Object.entries(). উপরন্তু, প্রোটোটাইপগুলি কোড পুনঃব্যবহারযোগ্যতা এবং আরও ভাল মেমরি ব্যবস্থাপনাকে উৎসাহিত করে।

আরেকটি শক্তিশালী পন্থা হল লিভারেজিং getter এবং setter ফাংশন গেটার এবং সেটার্স পরোক্ষভাবে বৈশিষ্ট্যগুলির সাথে যোগাযোগ করার একটি উপায় প্রদান করে, যা আপনাকে পুনরাবৃত্তির সময় বা অ্যাক্সেস করার সময় তাদের আচরণ নিয়ন্ত্রণ করতে দেয়। এই প্যাটার্নের সাহায্যে, ডেভেলপাররা ডেডিকেটেড ফাংশনগুলির মাধ্যমে বৈশিষ্ট্যগুলি পরিবর্তন করার জন্য নমনীয়তা প্রদান করার সময় পদ্ধতিগুলির অনিচ্ছাকৃত পরিবর্তন প্রতিরোধ করতে পারে। এই সমাধানটি নিশ্চিত করে যে ব্যবহারকারীদের জন্য একটি পরিষ্কার API বজায় রাখার সময় বস্তুর বৈশিষ্ট্যগুলি এনক্যাপসুলেটেড থাকে।

অবশেষে, বিকাশকারীরা ব্যবহার বিবেচনা করতে পারেন Object.freeze() বা Object.seal() বস্তুর পরিবর্তনশীলতা পরিচালনা করতে। Object.freeze() একটি বস্তুকে অপরিবর্তনীয় করে তোলে, এর বৈশিষ্ট্যের কোনো পরিবর্তন রোধ করে, যা এমন ক্ষেত্রে কার্যকর হতে পারে যেখানে আপনি শুধুমাত্র দুর্ঘটনাজনিত পরিবর্তন ছাড়াই ডেটা পড়তে চান। অন্যদিকে, Object.seal() বিদ্যমান বৈশিষ্ট্যগুলিকে আপডেট করার অনুমতি দেয় তবে নতুনগুলি যুক্ত করাকে বাধা দেয়। এই নিদর্শনগুলি শুধুমাত্র কোডের অখণ্ডতা বজায় রাখতে সাহায্য করে না বরং বস্তুর আচরণের উপর কঠোর নিয়ন্ত্রণ প্রয়োগ করে, পুনরাবৃত্তিকে নিরাপদ এবং আরও অনুমানযোগ্য করে তোলে।

JavaScript-এ Iterating Properties সম্পর্কিত প্রায়শ জিজ্ঞাসিত প্রশ্নাবলী

  1. পদ্ধতিগুলিকে প্রভাবিত না করে আপনি কীভাবে অবজেক্টের বৈশিষ্ট্যগুলির মাধ্যমে পুনরাবৃত্তি করবেন?
  2. আপনি ব্যবহার করতে পারেন Object.keys() শুধুমাত্র গণনাযোগ্য বৈশিষ্ট্যের উপর পুনরাবৃত্তি করতে এবং ব্যবহার করে পদ্ধতিগুলি এড়াতে Object.defineProperty() গণনাযোগ্য পতাকা সেট সহ false.
  3. অবজেক্ট-ওরিয়েন্টেড জাভাস্ক্রিপ্টে প্রোটোটাইপ ব্যবহার করার সুবিধা কী?
  4. প্রোটোটাইপগুলি আপনাকে একাধিক দৃষ্টান্ত জুড়ে ভাগ করা পদ্ধতিগুলিকে সংজ্ঞায়িত করার অনুমতি দেয়, মেমরির ব্যবহার উন্নত করে এবং নিশ্চিত করে যে পদ্ধতিগুলি সম্পত্তি পুনরাবৃত্তিতে হস্তক্ষেপ করে না।
  5. গেটার এবং সেটার্স কিভাবে অবজেক্ট ম্যানেজমেন্ট উন্নত করে?
  6. গেটার এবং সেটার্স প্রপার্টিগুলিতে নিয়ন্ত্রিত অ্যাক্সেস প্রদান করে, যা ডেভেলপারদের প্রত্যক্ষভাবে প্রপার্টির মানগুলিকে সরাসরি প্রকাশ না করে পরিচালনা করতে দেয়, বস্তুটিকে আরও নিরাপদ এবং অনুমানযোগ্য করে তোলে।
  7. কখন আপনি Object.freeze() এবং Object.seal() ব্যবহার করবেন?
  8. Object.freeze() একটি বস্তু অপরিবর্তনীয় করতে ব্যবহৃত হয়, যখন Object.seal() বিদ্যমান বৈশিষ্ট্যগুলিতে আপডেট করার অনুমতি দেয় কিন্তু নতুনের সংযোজন ব্লক করে, উভয়ই বস্তুর আচরণের উপর নিয়ন্ত্রণ বাড়ায়।
  9. আপনি সম্পত্তি পুনরাবৃত্তি পরিচালনা করতে ES6 ক্লাস ব্যবহার করতে পারেন?
  10. হ্যাঁ, ES6 classes পদ্ধতি এবং বৈশিষ্ট্যগুলি পৃথক করার জন্য একটি পরিষ্কার কাঠামো প্রদান করুন এবং ক্লাসের মধ্যে সংজ্ঞায়িত পদ্ধতিগুলি বস্তুর সম্পত্তি পুনরাবৃত্তিতে হস্তক্ষেপ করবে না।

জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি ম্যানেজমেন্ট মোড়ানো

জাভাস্ক্রিপ্ট পদ্ধতিগুলিকে প্রভাবিত না করে দক্ষতার সাথে বস্তুর বৈশিষ্ট্যগুলির উপর পুনরাবৃত্তি করার বিভিন্ন উপায় প্রদান করে। অ-গণনাযোগ্য পদ্ধতি, ক্লাস এবং প্রোটোটাইপের মতো কৌশলগুলি বিকাশকারীদের বৈশিষ্ট্য এবং যুক্তির মধ্যে একটি স্পষ্ট পার্থক্য বজায় রাখতে দেয়। প্রতিটি সমাধান সম্ভাব্য পার্শ্ব প্রতিক্রিয়া কমিয়ে কোড পাঠযোগ্যতা এবং পুনঃব্যবহারযোগ্যতা নিশ্চিত করার উপর দৃষ্টি নিবদ্ধ করে।

Symbols বা Object.defineProperty-এর মতো উন্নত পদ্ধতি ব্যবহার করা ডেভেলপারদের পুনরাবৃত্তি আচরণের উপর আরও নিয়ন্ত্রণ দেয়। এই নিদর্শনগুলি গতিশীল প্রোগ্রামিং পরিস্থিতিতে বিশেষভাবে কার্যকর যেখানে বস্তুগুলিতে ডেটা এবং পদ্ধতি উভয়ই থাকে। এই কৌশলগুলি প্রয়োগ করা বস্তুগুলিকে আরও কার্যকরভাবে পরিচালনা করতে সাহায্য করে, যা পরিষ্কার এবং আরও রক্ষণাবেক্ষণযোগ্য কোডের দিকে পরিচালিত করে।

জাভাস্ক্রিপ্ট সম্পত্তি পুনরাবৃত্তি কৌশল জন্য উত্স এবং রেফারেন্স
  1. অবজেক্টের বৈশিষ্ট্য এবং প্রোটোটাইপগুলি পরিচালনার জন্য উন্নত জাভাস্ক্রিপ্ট কৌশলগুলিকে বিশদভাবে বর্ণনা করে। MDN ওয়েব ডক্স - অবজেক্টের সাথে কাজ করা
  2. ES6 চিহ্ন এবং অ-গণনাযোগ্য বস্তু কী সংজ্ঞায়িত করার ক্ষেত্রে তাদের ভূমিকা সম্পর্কে তথ্য প্রদান করে। MDN ওয়েব ডক্স - প্রতীক
  3. জাভাস্ক্রিপ্টের ক্লাস সিনট্যাক্স এবং অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং অনুশীলন কভার করে। JavaScript.info - ক্লাস
  4. জাভাস্ক্রিপ্ট কোড পরীক্ষা এবং ফলাফল যাচাই করার জন্য জেস্ট ব্যবহার করার অন্তর্দৃষ্টি অফার করে। জাস্ট অফিসিয়াল ডকুমেন্টেশন
  5. এর ব্যবহার বিস্তারিত Object.defineProperty() সম্পত্তি গণনা নিয়ন্ত্রণ করতে। MDN ওয়েব ডক্স - Object.defineProperty()