نسخة الكود كما يلي:
وظيفة foreach (o) {
var html = "" ؛
لـ (var i in o) {
html+= i+"="+o [i]+"" ؛
}
console.log (html) ؛
console.log (o) ؛
}
// 1
//OBject.create(proto)
//object.create(proto،descriptors)
// إنشاء كائن باستخدام النموذج الأولي المحدد والسمة
// المعلمة:
// proto: يمكن أن يكون النموذج الأولي للكائن الذي تم إنشاؤه حديثًا فارغًا
// الواصفات: كائن اختياري يقوم بتخطيط أسماء السمات إلى واصفات السمة
// إرجاع كائن تم إنشاؤه حديثًا ، ورثه من Proto ، وله خصائص الواصفات في نفس الوقت.
نسخة الكود كما يلي:
var obj = object.create ({x: 1 ، y: 2} ، {
z: {القيمة: 3 ، قابلة للكتابة: صواب ، تعداد: صحيح ، قابل للتكوين: صحيح}
}) ؛
Foreach (OBJ)
OBJ.Z = 5
console.log (OBJ)
console.log ("====================================================")
// 2
//OBject.DefineProperties(o ،
// إنشاء أو تكوين خصائص متعددة لكائن
// المعلمة:
// o: الكائن الذي سيتم إنشاء السمات عليه أو تكوينه
// الواصفات: الكائن الذي يرسم اسم السمة إلى واصف السمة
// إرجاع كائن o
نسخة الكود كما يلي:
Object.DefineProperties (OBJ ، {
A: {value: "a" ، قابلة للكتابة: خطأ ، تعداد: صحيح ، قابل للتكوين: صحيح} ،
ب: {value: "b" ، قابلة للكتابة: false ، enumeries: true ، configable: true}
})
foreach (OBJ) ؛
console.log ("====================================================")
// 3
//OBject.DefineProperty(O،Name،desc)
// إنشاء أو تكوين خاصية كائن
// المعلمة:
// o: كائن سيتم إنشاء السمة أو تكوينها
// الاسم: اسم السمة الذي سيتم إنشاؤه أو تكوينه
// DESC: كائن واصف السمات الذي يصف السمة الجديدة التي سيتم إنشاؤها أو تعديلات على السمات الحالية
// إرجاع كائن o
نسخة الكود كما يلي:
Object.DefineProperty (OBJ ، "C" ، {value: "C" ، القابل للكتابة: false ، التعداد: خطأ ، قابل للتكوين: صحيح})
foreach (OBJ) ؛
console.log ("====================================================")
// 4
//OBject.freeze(o)
// تعيين كائن ليكون غير قابل للتغيير ولن يؤثر على السمات الموروثة
// المعلمة:
// o: الكائن المطلوب تجميده
// إرجاع صحيح | خطأ
نسخة الكود كما يلي:
var p = {x: 1 ، y: 2}
Object.freeze (p) ؛
px = 2 ؛
console.log (p) ؛
console.log (object.isfrozen (p)) // صحيح ، لا يمكن إذابته بمجرد تجميده
console.log ("====================================================")
// 5
//object.getownpropertydescriptor(o ،
// المعلمة:
// o: كائن
// الاسم: اسم السمة الذي سيتم الاستعلام عنه
// الاستعلام عن خصائص خاصية
// إرجاع كائن واصف السمة من السمة المحددة للكائن. إذا كانت السمة المحددة غير موجودة ، فإنها تعود غير محددة.
/*
واصف السمة هو كائن JavaScript عادي يصف خصائص كائن معين. هناك نوعان من سمات JavaScript. سمات البيانات لها قيمة واحدة وثلاث خصائص: التعداد ،
قابل للكتابة ، وقابل للتكوين. تحتوي خاصية الإكسسور على طريقة getter و/أو setter ، والتعداد.
واصفات لخصائص البيانات:
{
القيمة: أي قيمة JavaScript ،
قابل للكتابة: صحيح | خطأ ،
التعداد: صحيح | خطأ ،
قابلة للتكوين: صحيح | خطأ
}
واصف لخصائص الملحقات:
{
الحصول على: وظيفة أو غير محددة: استبدال قيمة السمة
المجموعة: وظيفة أو غير محددة: استبدال القابلية للكتابة
التعداد: صحيح | خطأ ،
قابلة للتكوين: صحيح | خطأ
}
*/
نسخة الكود كما يلي:
var o5 = object.getOntOndPropertyDescriptor (obj ، "c") ؛
console.log (O5) ؛
foreach (O5) ؛
console.log ("====================================================")
// 6
//object.getownpropertynames(o)
// إرجاع اسم السمة غير المؤسسة
// المعلمة:
// o: كائن
// إرجاع أسماء جميع السمات غير المؤسسة لـ O ، بما في ذلك الخصائص غير قابلة للتعدين. {enumeries: false}
نسخة الكود كما يلي:
var o6 = object.getownPropertyNames (OBJ) ؛
console.log (O6) ؛
console.log ("====================================================")
// 7
//OBject.getProtypeof(o)
// المعلمة:
// o: كائن
// إرجاع النموذج الأولي للكائن
نسخة الكود كما يلي:
var o7 = object.getPrototypeof (OBJ) ؛
console.log (O7) ؛
console.log ("====================================================")
// 8
//object.hasownproperty(propname) ؛
// المعلمة:
// propname يحتوي على اسم خاصية الكائن
// تحقق مما إذا كانت السمة موروثة
// إرجاع صحيح | خطأ
نسخة الكود كما يلي:
console.log (obj.hasownproperty ("x")) ؛ // => خطأ
console.log (obj.hasownproperty ("Z")) ؛ // => صحيح
console.log ("====================================================")
// 9
//OBject.isextensable(o) ؛
// احكم على ما إذا كان يمكن إضافة سمات جديدة إلى كائن
// المعلمة:
// o: يتم فحص كائن من أجل التوسيع
// يمكن إضافة الإرجاع على النحو الحقيقي | لا يمكن أن تكون خاطئة
// الوصف: جميع الكائنات قابلة للتمديد عند إنشائها حتى يتم تمريرها إلى كائن.
نسخة الكود كما يلي:
console.log (object.isextensenble (obj)) ؛ // => صحيح
//OBject.preventextensions(oBj)//set it to to to to to to the to sevense
//console.log(Object.isextensable(OBJ)) ؛ // => خطأ
console.log ("====================================================")
// 10
//OBject.isfrozen(o)
// احكم ما إذا كان الكائن غير قابل للتغيير
// المعلمة:
// o: يتم فحص كائن
// صحيح إذا تم تجميد O ولم يتغير ؛ وإلا فهو خطأ.
نسخة الكود كما يلي:
console.log ("====================================================")
// 11
//OBject.isprotypeof(o)
// عرض ما إذا كان الكائن الحالي هو النموذج الأولي لكائن آخر
// المعلمة:
// o: جميع الكائنات
// إذا كان الكائن نموذجًا أوليًا لـ O ، فهذا صحيح ، إذا لم يكن O كائنًا أو كائنًا ليس نموذجًا أوليًا لـ O ، فهو خطأ.
نسخة الكود كما يلي:
var o = new Object () ؛
Object.prototype.isprototypeof (o) // true
Array.Prototype.isprototypeof ([1،2]) // true ؛
Object.prototype.isprototypeof (function.prototype) // true
console.log ("====================================================")
// 12
//OBject.issealed(o)
// احكم على ما إذا كان يمكن إضافة خصائص الكائن أو حذفها
// المعلمة:
// o: يتم فحص كائن
// صحيح إذا تم إرفاق O ، وإلا كاذبة.
// إذا لم تتمكن من إضافة خاصية جديدة (غير محددة) إلى كائن ، ولم يتم حذف الخاصية الموجودة (غير المؤسسة) ، فهي محاطة.
// الأساليب الشائعة لإرفاق كائن هي كائن.
console.log ("====================================================")
// 13
//OBject.Keys(O)
// إرجاع اسم السمة التعداد المجاني
// المعلمة:
// o: كائن
نسخة الكود كما يلي:
console.log (object.keys ({x: 1 ، y: 2})) // => [x ، y]
console.log ("====================================================")
// 14
//OBject.preventextensions(o)
// عدم إضافة سمات جديدة على كائن
// المعلمة:
// o: كائن قابل للتمديد ليتم تعيينه
// بمجرد ضبطه على أنه غير قابل للخلاف ، لم يعد من الممكن تغييره ليكون قابلاً للتوسع
console.log ("====================================================")
// 15
//OBject.PropertyisEnumerable(propname)
// اكتشاف ما إذا كانت السمة معينة مرئية في حلقة في/في
// المعلمة
// propname: سلسلة تحتوي على اسم السمة المحدد للكائن
// إرجاع TRUE إذا كان للكائن خاصية غير مؤكدة تسمى Propname والخاصية تعداد.
نسخة الكود كما يلي:
var O15 = new Object () ؛
O15.x = 15 ؛
O15.PropertyisEnumerable ("X") ؛ //حقيقي؛
O15.PropertyisEnumerable ("y") ؛ //خطأ شنيع؛
O15.PropertyisEnumerable ("ToString") ؛ //خطأ شنيع؛
console.log ("====================================================")
// 16
//Object.seal(o)
// حظر إضافة أو إزالة خصائص الكائنات
// المعلمة
// o: كائن ليتم إرفاقه
// إرجاع كائن المعلمة في الحالة المغلقة o
// 17
//object.tolocalestring ()
// إرجاع تسمية السلسلة الموضعية للكائن المحلي
.
// ولكن لاحظ أن الفئات الأخرى (الصفيف ، التاريخ ، الرقم ، إلخ) تحدد كل منها نسخته الخاصة من هذه الطريقة. تستخدم لأداء تحويل السلسلة الموضعية. قد تكون هذه الطريقة مطلوبة أيضًا لتجاوزها عند تحديد فصلك.
// 18
//object.tostring ()
// تحديد تمثيل سلسلة كائن
// في برامج JavaScript ، لا تسمى طريقة ToString (). بشكل عام ، إذا تم تعريف هذه الطريقة في كائن ما ، فسيقوم النظام تلقائيًا بالاتصال بها عند الحاجة لاستبدال الكائن بسلسلة.
// 19
//object.valueof ()
// القيمة الأصلية للكائن المحدد
// إرجاع القيمة الأصلية المرتبطة بالكائن المحدد. إذا كانت هذه القيمة موجودة ، إذا لم تكن هناك قيمة مرتبطة بالكائن المعدل ، فسيتم إرجاع الكائن نفسه.