يرجى قراءة التعليقات بعناية للحصول على التفاصيل. دعنا نتحدث أقل هراء هنا ونحمل الرمز.
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<meta charset = "utf-8">
<title> اختبار وثيقة </title>
<script type = "text/javaScript">
// في جوهرها ، فإن الخصائص والأساليب هي نفسها ، والطرق هي وظائف تكون خصائصها من النوع المرجعي.
// كائن يحتوي على 4 خصائص:
// 1 ، السمات التي حددها المنشئ من خلال هذه الكلمة الرئيسية
// 2 ، السمات المحددة بواسطة المُنشئ من خلال الكلمة الرئيسية VAR
// 3 ، خصائص مضافة إلى كائن النموذج الأولي الخاص بالمقدم
// 4 ، تتم إضافة السمات ديناميكيًا بواسطة الكائن
// الخصائص العامة للمثال: 1 ، 2 ، 3 ، 4 يمكن الوصول إليها من خلال السمات المحددة بواسطة هذه الكلمة الرئيسية
// سمات خاصة للمثيل: 2 سمات محددة بواسطة الكلمة الرئيسية VAR. يمكن الوصول إليها 2
// خصائص مشاركة مثيل: 3 سمات تمت إضافتها من خلال النموذج الأولي الذي أشار إليه المثيل. يمكن الوصول إليها 1،3،4
// خصائص ثابتة للمثال: 4 خصائص تمت إضافتها ديناميكيًا بواسطة الكائن. يمكن الوصول إليها 1،3،4
// تلخيص:
// سمات المثيل: 1 ، الجمهور
// 2 ، خاص
// 4 ، ثابت
// سمات النموذج الأولي: 3 ، شارك
// يتم تعريف هذا على أنه سمة مميزة. كل شيء يمكن الوصول إليه
// يتم تعريف var على أنها خاصية خاصة.
// السمات المضافة ديناميكيًا هي سمات عامة. لا يمكن الوصول إلى العقارات الخاصة
// سمة النموذج الأولي المشير إلى كائن المثيل هي سمة النموذج الأولي. لا يمكن الوصول إلى السمات الخاصة ، مع أولوية أقل من السمات العامة
// سمات المثيل تتكون بشكل أساسي من سمات وسمات الامتياز العامة. يمكن الوصول إلى كلاهما عن طريق الخصائص الخارجية والنموذج الأولي. الفرق الرئيسي هو ما إذا كانت السمات الخاصة يمكن الوصول إليها
// أسبقية سمة النموذج الأولي أقل من سمة مثيل. يمكن الوصول إليها خارجيًا وسمات مثيل (باستثناء السمات الخاصة)
.
// الخصائص العامة: سمات تتعرض للبيئة الخارجية. وهي أيضًا سمة للكائن.
// سمات خاصة: لا يمكن الوصول إلى السمات داخل الكائنات. من المجدي فقط النظر فيها على مستوى المنشئ.
// خصائص ثابتة: خصائص مضاف ديناميكيا. وهي أيضًا سمة للكائن.
// الخصائص المشتركة: السمات التي تشاركها جميع الحالات التي تم إنشاؤها بواسطة المُنشئين.
مستخدم الوظيفة () {
// الخصائص العامة: سمات لكل كائن مثيل مستخدم جديد.
// هي سمة مثيل ، وكل سمات المثيل لا تشارك الذاكرة.
// يمكن الوصول إليها من الخارج.
this.name = 'byronvis' ؛
// الطريقة المميزة: طريقة تم استخدامها لكل كائن مثيل مستخدم جديد.
// طريقة مثيل ، جميع أساليب المثيل لا تشارك الذاكرة.
// يمكن الوصول إليها من الخارج.
// العقارات العامة يمكن الوصول إليها.
// الخصائص الخاصة يمكن الوصول إليها.
this.sayname = function () {
تنبيه (this.name) ؛
تنبيه (this.school) ؛
تنبيه (العمر) ؛ // سيتم تقديم إعلان متغير تلقائيًا.
تنبيه (this.Sex) ؛
} ؛
// سمات خاصة: لا يمكن الوصول إليها من الخارج.
// من المنطقي فقط للمبنفة ، وليس لكائنات مثيل المستخدم الجديدة.
VAR AGE = 22 ؛
// طريقة خاصة: لا يمكن الوصول إليها من الخارج.
// من المنطقي فقط للمبنفة ، وليس لكائنات مثيل المستخدم الجديدة.
الوظيفة sayge () {
تنبيه (العمر) ؛
}
sayage () ؛
}
// سمات مشتركة: الذاكرة المشتركة.
user.prototype.school = 'zky' ؛
// الطرق الشائعة: يمكن الوصول إلى السمات العامة.
// الذاكرة المشتركة.
user.prototype.sayschool = function () {
تنبيه (this.school) ؛
تنبيه (this.name) ؛
تنبيه (this.Sex) ؛
تنبيه (العمر) ؛
} ؛
var obj = new user () ؛
// خصائص ثابتة: هل تم إضافة خصائص المثيل ديناميكيًا.
obj.sex = 'man' ؛
// طريقة ثابتة: هل طريقة المثيل تمت إضافتها ديناميكيًا.
obj.saysex = function () {
تنبيه (this.Sex) ؛
تنبيه (this.name) ؛
تنبيه (this.school) ؛
تنبيه (العمر) ؛
} ؛
.
/////
// التحقق: تحدد هذه الكلمة الرئيسية الخصائص للوصول إلى الخصائص المضافة ديناميكيًا
// obj.sayname () ؛ // true
// التحقق: السمات المضافة ديناميكيًا تصل إلى السمات المحددة بواسطة هذه الكلمة الرئيسية
// obj.saysex () ؛ // true
// التحقق: العقارات العامة تصل إلى خصائص خاصة
// obj.sayname () ؛ // true
obj.saysex () ؛ // false
// التحقق: السمات المشتركة الوصول إلى السمات الخاصة
// obj.sayschool () ؛ // false
</script>
</head>
<body>
وثائق الاختبار
</body>
</html>
هل فهمت سمات المثال وسمات النموذج الأولي؟ هذه المقالة مفصلة للغاية وموصى بها للجميع. آمل أن يكون ذلك مفيدًا لأصدقائي.