1) Trois types de méthodes peuvent être définies pour les objets en JS : les méthodes privées, les méthodes d'instance et les méthodes de classe, similaires à Java :
Les méthodes privées ne peuvent être utilisées qu'à l'intérieur de l'objet
Les méthodes d'instance ne peuvent être utilisées qu'après l'instanciation de l'objet.
Les méthodes de classe peuvent être utilisées directement via le nom de classe
Remarque : la définition de méthode ne peut pas être effectuée via la méthode d'index mentionnée ci-dessus.
2) Définir des méthodes privées
Les méthodes privées doivent être définies dans le corps du constructeur et ne peuvent être utilisées que dans le corps du constructeur.
Format de syntaxe : function methodName(arg1,…,argN){ }
Par exemple :
function User(name){ this.name=name; function getNameLength(nameStr){ return nameStr.length; } this.nameLength=getNameLength(this.name); }
3) Définir les méthodes d'instance Actuellement, il existe deux manières. :
méthode prototype, utilisée en dehors du constructeur, format de syntaxe :
functionName.prototype.methodName=method;
ou
functionName.prototype methodName. =function(arg1,…,argN){};
cette méthode, utilisée à l'intérieur du constructeur, format de syntaxe :
this.methodName=method;
ou
this.methodName=function(arg1,…,argN){};
Dans la description de la syntaxe ci-dessus, la méthode est une méthode externe qui existe déjà et la méthode de l'objet à être défini. Cela signifie attribuer une méthode externe directement à une méthode de l’objet.
Définir des méthodes objet sous la forme de function(arg1,…,argN){} est ce que les développeurs doivent maîtriser.
Quelques exemples de définition de méthodes d'instance : Exemple 1
function User(name){ this.name=name; this.getName=getUserName; this.setName=setUserName; } function getUserName(){ return this.name; } Function setUserName(name){ this.name=name; }
Quelques exemples de définition de méthodes d'instance : Exemple 2
function User(name){ this.name=name; this.getName=function(){ return this.name; }; this.setName=function(newName){ this.name=newName; }; }
Quelques exemples de définition de méthodes d'instance : Exemples 3
function User(name){ this.name=name; } User.prototype.getName=getUserName; User.prototype.setName=setUserName(); function getUserName(){ return this.name; } Function setUserName(name){ this.name=name; }
Quelques exemples de définition de méthodes d'instance : Exemple 4
4) Définition de méthodes de classe
Les méthodes de classe doivent être définies en dehors du constructeur, et peuvent être directement passé par le constructeur. Référencez-le par son nom.
Format de syntaxe :
functionName.methodName=method;
ou
functionName.methodName=function(arg1,…,argN){};
Exemple :
function User(name){ this.name=name; } User.getMaxAge=getUserMaxAge; function getUserMaxAge(){ return 200; }
ou
User.getMaxAge=function(){return 200;}; alert(User.getMaxAge());
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!