الفرق بين المراجعتين ل"JavaScript/Object/getOwnPropertySymbols"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
 
ط (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
 
سطر 57: سطر 57:
 
*مسودة المعيار [https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols ECMAScript Latest Draft].
 
*مسودة المعيار [https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols ECMAScript Latest Draft].
 
*معيار [http://www.ecma-international.org/ecma-262/6.0/#sec-object.getownpropertysymbols ECMAScript 2015 (6th Edition)]‎.
 
*معيار [http://www.ecma-international.org/ecma-262/6.0/#sec-object.getownpropertysymbols ECMAScript 2015 (6th Edition)]‎.
[[تصنيف:JavaScript]]
+
[[تصنيف:JavaScript|{{SUBPAGENAME}}]]
[[تصنيف:JavaScript Global Objects]]
+
[[تصنيف:JavaScript Global Objects|{{SUBPAGENAME}}]]
[[تصنيف:JavaScript Object]]
+
[[تصنيف:JavaScript Object|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 15:41، 28 يناير 2018

الدالة Object.getOwnPropertySymbols()‎ تُعيد مصفوفةً فيها جميع الخاصيات الرمزية (symbol properties) الموجودة مباشرةً في الكائن المعطي.

البنية العامة

Object.getOwnPropertySymbols(obj)

obj

الكائن الذي نريد الحصول على جميع خاصياته الرمزية.

القيمة المعادة

مصفوفة فيها جميع الخاصيات الرمزية (symbol properties) التابعة مباشرةً للكائن المعطي.

الوصف

بما يشبه الدالة Object.getOwnPropertyNames()، يمكن الحصول على جميع الخاصيات الرمزية لكائنٍ ما باستخدام هذه الدالة؛ لكن لاحظ أنَّ الدالة Object.getOwnPropertyNames() لا تُعيد الخاصيات الرمزية وإنما ستعيد الخاصيات النصية فقط.

ولمّا كانت جميع الكائنات لا تحتوي على خاصيات رمزية عند تهيئتها، فستُعيد الدالة Object.getOwnPropertySymbols()‎ مصفوفةً فارغةً ما لم تضبط خاصيات رمزية على الكائن.

أمثلة

سنستخدم الدالة Object.getOwnPropertySymbols()‎ للحصول على مصفوفة تحتوي على الخاصيات الرمزية في الكائن obj في المثال الآتي:

var obj = {};
var a = Symbol('a');
var b = Symbol.for('b');

obj[a] = 'localSymbol';
obj[b] = 'globalSymbol';

var objectSymbols = Object.getOwnPropertySymbols(obj);

console.log(objectSymbols.length); // 2
console.log(objectSymbols);        // [Symbol(a), Symbol(b)]
console.log(objectSymbols[0]);     // Symbol(a)

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي 38 36 غير مدعومة 25 9

على النقيض من متصفح IE، يدعم متصفح Edge هذه الميزة.

مصادر ومواصفات