আসলে, জাভাস্ক্রিপ্টে অবজেক্ট তৈরির বিভিন্ন উপায় রয়েছে। আপনি যখন কোনও অবজেক্ট তৈরি করতে চান যখন " নতুন ব্যবহার করে" নির্মাণকারী-ভিত্তিক "অবজেক্ট তৈরি করার কোনও সুবিধা নেই benefit " অপারেটর । এটি " অবজেক্ট লিটারাল " সিনট্যাক্স ব্যবহার করে কোনও অবজেক্ট তৈরির সমান । " নতুন " অপারেটর দিয়ে তৈরি " কন্সট্রাক্টর-ভিত্তিক " অবজেক্টগুলি অবিশ্বাস্য ব্যবহারে আসে যখন আপনি " প্রোটোটাইপাল উত্তরাধিকার " সম্পর্কে ভাবছেন । আক্ষরিক সিনট্যাক্স দিয়ে তৈরি বস্তুর সাথে আপনি উত্তরাধিকার শৃঙ্খলা বজায় রাখতে পারবেন না। তবে আপনি কনস্ট্রাক্টর ফাংশন তৈরি করতে পারবেন , এর প্রোটোটাইপের সাথে বৈশিষ্ট্য এবং পদ্ধতিগুলি সংযুক্ত ।"অপারেটর, এটি এমন একটি বস্তু ফেরত দেবে যা ওই নির্মাণকারী ফাংশনের প্রোটোটাইপের সাথে সংযুক্ত সমস্ত পদ্ধতি এবং বৈশিষ্ট্যগুলিতে অ্যাক্সেস পাবে।
কনস্ট্রাক্টর ফাংশনটি ব্যবহার করে কোনও বস্তু তৈরির উদাহরণ এখানে রয়েছে (নীচে কোড ব্যাখ্যা দেখুন):
function Person(firstname, lastname) {
this.firstname = firstname;
this.lastname = lastname;
}
Person.prototype.fullname = function() {
console.log(this.firstname + ' ' + this.lastname);
}
var zubaer = new Person('Zubaer', 'Ahammed');
var john = new Person('John', 'Doe');
zubaer.fullname();
john.fullname();
এখন, আপনি ব্যক্তি নির্মাণ ফাংশনটি ইনস্ট্যান্ট করে যতগুলি অবজেক্ট তৈরি করতে পারেন এবং এগুলির সমস্ত এটি থেকে পুরো নাম () লাভ করবে।
দ্রষ্টব্য: " এই " কীওয়ার্ডটি কনস্ট্রাক্টর ফাংশনের মধ্যে একটি শূন্য অবজেক্টের উল্লেখ করবে এবং যখনই আপনি " নতুন " অপারেটর করবেন এটি স্বয়ংক্রিয়ভাবে " এই " কীওয়ার্ডের সাথে সংযুক্ত সমস্ত বৈশিষ্ট্য এবং পদ্ধতি সম্বলিত কোনও বস্তু ফিরিয়ে আনবে automatically । এবং এই বিষয়গুলি নিশ্চিতভাবে ব্যক্তি নির্মাতা ফাংশনের প্রোটোটাইপের সাথে সংযুক্ত পদ্ধতি এবং বৈশিষ্ট্যগুলির উত্তরাধিকারী হবে (যা এই পদ্ধতির মূল সুবিধা)।
যাইহোক, আপনি যদি একই কার্যকারিতাটি " অবজেক্ট আক্ষরিক " সিনট্যাক্সের নীচের মতো সমস্ত বস্তুর পুরো নাম () তৈরি করতে হবে:
var zubaer = {
firstname: 'Zubaer',
lastname: 'Ahammed',
fullname: function() {
console.log(this.firstname + ' ' + this.lastname);
}
};
var john= {
firstname: 'John',
lastname: 'Doe',
fullname: function() {
console.log(this.firstname + ' ' + this.lastname);
}
};
zubaer.fullname();
john.fullname();
শেষ পর্যন্ত, আপনি এখন যদি কেন জিজ্ঞাসা করেন আমি কেন ব্যবহার করব বস্তুর আক্ষরিক পদ্ধতির পরিবর্তে কনস্ট্রাক্টর ফাংশন পদ্ধতির ব্যবহার করব :
*** প্রোটোটাইপাল উত্তরাধিকার একটি উত্তরাধিকারের একটি সহজ শৃঙ্খলার মঞ্জুরি দেয় যা প্রচুর পরিমাণে দরকারী এবং শক্তিশালী হতে পারে।
*** এটি কনস্ট্রাক্টর ফাংশন প্রোটোটাইপে সংজ্ঞায়িত সাধারণ পদ্ধতি এবং বৈশিষ্ট্যগুলির উত্তরাধিকারসূত্রে স্মৃতি সংরক্ষণ করে। অন্যথায়, আপনাকে সেগুলি বারবার সমস্ত বস্তুর মধ্যে অনুলিপি করতে হবে।
আশা করি এটা বোধ গম্য।
a = new Object
,a = new Object()
,a = {}
, আক্ষরিক অনেক সহজ এবং যখন আগে বলে দ্রুত, নতুন কম্পাইলার আমার বক্তব্যের মিথ্যা হতে হত হতে পারে হয় কিছু পরীক্ষার আমি দৌড়ে। একই আক্ষরিক অ্যারে ক্ষেত্রে প্রযোজ্য