Maison > interface Web > js tutoriel > le corps du texte

Explication détaillée des exemples de code de la différence entre javascript utilisant et non utilisant le prototype

伊谢尔伦
Libérer: 2017-07-27 13:34:19
original
1271 Les gens l'ont consulté

Les méthodes qui n'utilisent pas de prototype sont équivalentes aux méthodes statiques de la classe. Au contraire, les méthodes qui utilisent un prototype sont équivalentes aux méthodes d'instance de la classe. Elles ne peuvent pas être utilisées tant que new n'est pas autorisé.

Quelle est la différence entre les deux méthodes ? Qu'est-ce que ça fait d'utiliser un prototype ou non ?
function ListCommon2(first,second,third) 
{ 
this.First=function () 
{ 
alert("first do"+first); 
} 
} 
ListCommon2.do1=function(first) 
{ 
// this.First(); 
alert("first do"+first); 
} 
ListCommon2.prototype.do2=function(first) 
{ 
// this.First(); 
alert("first do"+first); 
}
Copier après la connexion

Code de test :

var t1=new ListCommon2("烧水1","泡茶1","喝1"); 
// t1.do1();//调用出错 
ListCommon2.do1("烧水1"); 
var t2=new ListCommon2("烧水2","泡茶2","喝2"); 
t2.do2("烧水2");// 
// ListCommon2.do2("烧水1");//调用出错
Copier après la connexion
Après les tests, il a été constaté que la méthode sans utiliser de prototype est équivalente à la méthode statique de la classe, elle peut donc être appelée comme ceci , ListCommon2.do1("Boil water 1 ");, si appelé de cette manière, une erreur se produira, t1.do1();


Au contraire, la méthode utilisant le prototype est équivalente à la méthode d'instance de la classe, qui ne peut être utilisée qu'après que new n'est pas autorisé, ListCommon2.do2("Boil water 1 "); Cela provoquera une erreur

Conclusion, la méthode définie à l'aide du prototype est équivalente à la méthode d'instance de la classe. Elle doit être nouvelle avant de pouvoir être utilisée. Les restrictions sur les fonctions qui peuvent être appelées dans la fonction sont également similaires aux restrictions sur les méthodes d'instance de la classe

Utilisation des méthodes qui le font. ne pas utiliser de définitions de prototypes est équivalent aux méthodes statiques de la classe. Elles peuvent être utilisées directement sans nouveauté. Les restrictions sur les fonctions pouvant être appelées dans la fonction sont également similaires aux restrictions sur les méthodes statiques de la classe
<.>Par exemple, this.First();
ne peut pas être appelé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!