কোর্স সুপারিশ
- পূর্ববর্তী পৃষ্ঠা defineProperties()
- পরবর্তী পৃষ্ঠা entries()
- এক স্তর উপরে ফিরে যান JavaScript ওবজেক্ট নির্দেশিকা
বর্ণনা ও ব্যবহার
Object.defineProperty()
পদ্ধতি এটা অবজেক্টের অ্যাট্রিবিউট যোগ কিংবা সংশোধন করতে ব্যবহৃত হয়。
Object.defineProperty()
পদ্ধতি এটা অ্যাট্রিবিউটের মেটাডাটা পরিবর্তন করতে দেয়。
Object.defineProperty()
পদ্ধতি এটা একটি getter এবং setter যোগ করতে দেয়。
সংশ্লিষ্ট পদ্ধতি
Object.defineProperty()
অ্যাট্রিবিউট যোগ কিংবা সংশোধন করুন
Object.defineProperties()
একাধিক অ্যাট্রিবিউট যোগ কিংবা সংশোধন করুন
Object.getOwnPropertyNames()
অবজেক্টের সমস্ত অ্যাট্রিবিউটের নাম ফিরিয়ে দেয়।
Object.getOwnPropertyDescriptor()
অ্যাট্রিবিউটের ডিসক্রিপ্টর ফিরিয়ে দেয়।
Object.getOwnPropertyDescriptors()
কোন অবজেক্টের সমস্ত অ্যাট্রিবিউটের ডিসক্রিপ্টর ফিরিয়ে দেয়।
ইনস্ট্যান্স
উদাহরণ 1
অ্যাট্রিবিউট যোগ করুন:
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" language: "EN" }; // একটি নতুন অ্যাট্রিবিউট যোগ করুন Object.defineProperty(person, "year", {value:"2008"});
উদাহরণ 2
অ্যাট্রিবিউট সংশোধন করুন:
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" language: "EN" }; // 修改一个属性 Object.defineProperty(person, "language", {value:"NO"});
উদাহরণ 3
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" language: "NO" }; // 修改一个属性 Object.defineProperty(person, "language", { value: "EN" writable: true, enumerable: true, configurable: true }); // 枚举属性 let txt = ""; for (let x in person) { txt += person[x] + "<br>"; } // অ্যাট্রিবিউট দেখাও document.getElementById("demo").innerHTML = txt;
উদাহরণ 4
আগামী উদাহরণ পূর্ববর্তী উদাহরণের সমতুল, কিন্তু language অ্যাট্রিবিউটটি লুকিয়ে রেখেছে, যার ফলে এটা এক্সট্রাকবলভত হয়েছে:
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" language: "NO" }; // 修改一个属性 Object.defineProperty(person, "language", { value: "EN" writable: true, enumerable: false, configurable: true }); // 枚举属性 let txt = ""; for (let x in person) { txt += person[x] + "<br>"; } document.getElementById("demo").innerHTML = txt;
উদাহরণ 5
এই উদাহরণে setter এবং getter-কে তৈরি করা হয়েছে যাতে language এক্সপ্রোপ্রিয়টির অপডেট হয় মাথার বড় অক্ষরে:
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" language: "NO" }; // 修改一个属性 Object.defineProperty(person, "language", { get: function() { return language }, set: function(value) { language = value.toUpperCase() } }); // 修改 language person.language = "en"; // 显示 language document.getElementById("demo").innerHTML = person.language;
উদাহরণ 6
এই উদাহরণে গেটার দ্বারা firstName এবং lastName-কে মিলিয়ে ফেলা হয়:
// 创建一个对象 const person = { firstName: "Bill", lastName: "Gates" }; // 定义一个 Getter Object.defineProperty(person, "fullName", { get: function () { return this.firstName + " " + this.lastName; } });
উদাহরণ 7
জাভাস্ক্রিপ্টের Getter এবং Setter অত্যন্ত উপযুক্ত হয় কাউন্টার তৈরির জন্য:
// 定义 Setter 和 Getter Object.defineProperty(obj, "reset", { get: function () { this.counter = 0; } }); Object.defineProperty(obj, "increment", { get: function () { this.counter++; } }); Object.defineProperty(obj, "decrement", { get: function () { this.counter--; } }); Object.defineProperty(obj, "add", { set: function (value) { this.counter += value; } }); Object.defineProperty(obj, "subtract", { set: function (value) { this.counter -= value; } });
বিন্যাস
Object.defineProperty(object, property, descriptor)
পারামিটার
পারামিটার | বর্ণনা |
---|---|
object | প্রয়োজনীয়। লক্ষ্য বস্তু |
property | প্রয়োজনীয়। বৈশিষ্ট্যের নাম |
descriptor |
প্রয়োজনীয়। যে অপরিবর্তনীয় বৈশিষ্ট্য যোগ করা হবে বা পরিবর্তন করা হবে, তা:
|
ফলাফল
ধরন | বর্ণনা |
---|---|
Object | পরিবর্তিত হওয়া বস্তু |
ব্রাউজার সমর্থন
Object.defineProperty()
এটা ECMAScript5 (ES5) এর বৈশিষ্ট্য
2013 সালের ৭ই জুলাই থেকে, সমস্ত আধুনিক ব্রাউজারগুলি সম্পূর্ণভাবে ES5 (JavaScript 2009) সমর্থন করে:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 23 | IE/Edge 11 | Firefox 21 | Safari 6 | Opera 15 |
2012 সালের ৯শে সেপ্টেম্বর | 2012 সালের ৯শে সেপ্টেম্বর | 2013 সালের ৪শে এপ্রিল | 2012 সালের ৭ই জুলাই | 2013 সালের ৭ই জুলাই |
- পূর্ববর্তী পৃষ্ঠা defineProperties()
- পরবর্তী পৃষ্ঠা entries()
- এক স্তর উপরে ফিরে যান JavaScript ওবজেক্ট নির্দেশিকা