الفرق بين المراجعتين لصفحة: «JavaScript/Object/lookupSetter»
ط استبدال النص - 'تصنيف:JavaScript Object تصنيف:JavaScript Global Objects' ب'تصنيف:JavaScript Global Objects تصنيف:JavaScript Object' |
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}' |
||
سطر 55: | سطر 55: | ||
== مصادر ومواصفات == | == مصادر ومواصفات == | ||
*مسودة المعيار [https://tc39.github.io/ecma262/#sec-object.prototype.__lookupSetter__ ECMAScript Latest Draft]. جعلتها هذه المسودة معياريةً. | *مسودة المعيار [https://tc39.github.io/ecma262/#sec-object.prototype.__lookupSetter__ ECMAScript Latest Draft]. جعلتها هذه المسودة معياريةً. | ||
[[تصنيف:JavaScript]] | [[تصنيف:JavaScript|{{SUBPAGENAME}}]] | ||
[[تصنيف:JavaScript Global Objects]] | [[تصنيف:JavaScript Global Objects|{{SUBPAGENAME}}]] | ||
[[تصنيف:JavaScript Object]] | [[تصنيف:JavaScript Object|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 15:39، 28 يناير 2018
الدالة Object.prototype.__lookupSetter__()
تُعيد الدالة المرتبطة بالخاصية المعنية كدالة setter.
تحذير: هذه الدالة مهملة، وعلى الرغم من أنَّ هذه الدالة موجودة في أغلبية المتصفحات، لكنها لم تُعرَّف إلا في آخر مسودة من معيار ECMAScript لأغراض التوافقية، ولا يجب أن تُستخدَم لوجود بدائل أفضل منها.
البنية العامة
obj.__lookupSetter__(sprop)
sprop
سلسلة نصية تحتوي على اسم الخاصية التي نريد إعادة دالة setter المرتبطة بها.
القيمة المعادة
دالة setter المرتبطة بالخاصية المُحدَّدة.
الوصف
إذا عُرِّفَت دالة setter على إحدى خاصيات الكائن، فمن غير الممكن الإشارة إلى دالة setter عبر تلك الخاصية، لأنَّ تلك الخاصية تُشير إلى القيمة المُعادة من تلك الدالة؛ لذا يمكن استخدام الدالة __lookupSetter__
للحصول على مرجعية لدالة setter.
لاحظ أنَّ من المستحسن استخدام الدالة المعيارية Object.getOwnPropertyDescriptor()
.
أمثلة
مثال عن استخدام الدالة __lookupSetter__
، نُذكِّر أنَّه لا يجدر بنا استخدام هذه الطريقة:
var obj = {
set foo(value) {
this.bar = value;
}
};
obj.__lookupSetter__('foo')
// (function(value) { this.bar = value; })
يمكننا تنفيذ ما سبق بطريقةٍ معيارية باستخدام الدالة المعيارية Object.getOwnPropertyDescriptor()
:
Object.getOwnPropertyDescriptor(obj, 'foo').set;
// (function(value) { this.bar = value; })
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | 11 | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft. جعلتها هذه المسودة معياريةً.