هذه كلمة رئيسية مهمة في اللغة الموجهة نحو الكائن. يختلف JavaScript هذا عن اللغة الموسيقية مثل Java و C#، مما يجعل هذا الأمر أكثر إرباكًا ومربكة.
ما يستخدمه هذا:
1. وظيفة نقية
2. استدعاء طريقة الكائن
3. استخدم جديد للاتصال بالمقدم
4. الوظائف الداخلية
5. استخدم الاتصال / التقديم
6
1. وظيفة نقية
نسخ رمز رمز على النحو التالي:
var name = "هذا هو نافذة" ؛
وظيفة getName () {
console.log (هذا) ؛
Console.log (This.name) ؛
}
getName () ؛
تحليل نتائج التشغيل: هذا في الوظائف النقية يشير إلى الكائنات العالمية ، النافذة.
2. استدعاء طريقة الكائن
نسخ رمز رمز على النحو التالي:
var name = "هذا هو نافذة" ؛
var testobj = {
الاسم: "هذا Testobj" ،
getName: function () {
Console.log (هذا) ؛
console.log (this.name) ؛
}
}
testobj.getName () ؛
تشغيل تحليل النتائج: يشير هذا إلى الكائن الذي يستدعي الطريقة.
3. استخدم جديد للاتصال بالمقدم
نسخ رمز رمز على النحو التالي:
وظيفة getObj () {
console.log (هذا) ؛
}
جديد getObj () ؛
تشغيل تحليل النتائج: هذا في المُنشئ الجديد يشير إلى الكائن الذي تم إنشاؤه حديثًا.
4. الوظائف الداخلية
نسخ رمز رمز على النحو التالي:
var name = "This is Window" ؛
var testobj = {
الاسم: "هذا is testobj" ،
getName: function () {
// var seelf = هذا ؛
var ahandle = function () {{)
console.log (هذا) ؛
Console.log (This.name) ؛
//console.log (set) ؛
}
مقبض ()؛
}
}
testobj.getName () ؛
تشغيل تحليل النتائج: لا يزال هذا في الوظيفة الداخلية يشير إلى الكائن العالمي ، نافذة. يعتبر عمومًا خطأ في التصميم في لغة JavaScript ، لأنه لا أحد يريد توجيه هذا إلى الوظيفة الداخلية إلى الكائن العالمي. تتمثل طريقة المعالجة العامة في حفظ هذا كمتغير ، ويتم الاتفاق بشكل عام على أن يكون ذلك أو الذات ، كما هو موضح في الكود أعلاه.
5. استخدم الاتصال / التقديم
نسخ رمز رمز على النحو التالي:
var name = "هذا هو نافذة" ؛
var testobj1 = {
الاسم: "هذا testobj1" ،
getName: function () {
console.log (هذا) ؛
Console.log (this.name) ؛
}
}
var testobj2 = {
الاسم: "هذا testobj2"
}
testobj1.getName.apply (testobj2) ؛
testobj1.getName.call (testobj2) ؛
ملاحظة: تطبيق ومكالمة متشابهة ، لكن المعلمات الثانية من الاثنين مختلفة:
[1] استدعاء (thisarg [، arg1 ، arg2 ، ...]) ؛
[2] تطبيق (Thisarg [، Argarray]) ؛
تحليل نتائج التشغيل: هذا يستخدم هذا في الدالة Call / تطبيق للإشارة إلى كائن الربط.
6
يجب أن تكون هذه الطريقة في طريقة الحدث هي المكان الأكثر مشبوهة ، معظم الأخطاء التي نشأت من هذا.
نسخ رمز رمز على النحو التالي:
// صفحة للربط على العنصر
<script type = "text/javaScript">
وظيفة btclick () {
console.log (هذا) ؛
}
</script>
<body>
<button id = "btn" onClick = "btclick () ؛"> انقر فوق </button>
</body>
نسخ رمز رمز على النحو التالي:
// js طريقة ربط (1)
<body>
<button id = "btn"> انقر فوق </button>
</body>
<script type = "text/javaScript">
وظيفة btclick () {
console.log (هذا) ؛
}
document.getElementByid ("BTN").
document.getElementByid ("BTN").
</script>
نسخ رمز رمز على النحو التالي:
// js methoding (2)
<body>
<button id = "btn"> انقر فوق </button>
</body>
<script type = "text/javaScript">
document.getElementByid ("BTN").
console.log (هذا) ؛
}
document.getElementByid ("BTN").
</script>
نسخ رمز رمز على النحو التالي:
// js methoding (3)
<body>
<button id = "btn"> انقر فوق </button>
</body>
<script type = "text/javaScript">
وظيفة btclick () {
console.log (هذا) ؛
}
document.getElementByid ("BTN"). الطريقة (الطريقة الطريقة (الطريقة) عند استخدامها في معالجة الأحداث.
document.getElementByid ("BTN").
</script>
تحليل نتائج التشغيل: إن طريقتان في الحدث الشائعان ، وربط الأحداث على عنصر الصفحة بالإضافة إلى طريقة الحدث الربط ، يشير هذا إلى عنصر النخبة في حدث الربط.