Table des matières
Introduction à la classe
Méthodes statiques et propriétés statiques
Méthodes statiques" >Méthodes statiques
Héritage ES6, super() doit être utilisé dans le constructeur de la sous-classe . Parce que l'héritage ES6 y ajoute d'abord les attributs et les méthodes de l'objet d'instance de classe parent, puis appelle le constructeur de la sous-classe pour le modifier. Si la sous-classe ne définit pas de méthode constructeur, super() l'ajoutera par défaut. la sous-classe héritera des méthodes et des attributs de la classe parent, mais les méthodes et attributs statiques doivent être appelés via le nom de classe de la sous-classe" >la classe peut être héritée en utilisant le mot-clé extends Héritage ES6, super() doit être utilisé dans le constructeur de la sous-classe . Parce que l'héritage ES6 y ajoute d'abord les attributs et les méthodes de l'objet d'instance de classe parent, puis appelle le constructeur de la sous-classe pour le modifier. Si la sous-classe ne définit pas de méthode constructeur, super() l'ajoutera par défaut. la sous-classe héritera des méthodes et des attributs de la classe parent, mais les méthodes et attributs statiques doivent être appelés via le nom de classe de la sous-classe
Si la variable est définie comme privée (définie en dehors des accolades de la classe), vous ne pouvez utiliser que des getters sans setters.
【Recommandations associées :
Maison interface Web js tutoriel Résumer et organiser les points de connaissance de la classe en ES6

Résumer et organiser les points de connaissance de la classe en ES6

Aug 08, 2022 pm 03:09 PM
es6

Cet article vous apporte des connaissances pertinentes sur javascript Il présente principalement des questions liées à la classe. ES6 introduit le concept de classe qui peut être défini via le mot-clé class, qui nous correspond davantage. langages orientés objet que nous comprenons habituellement. J'espère que cela sera utile à tout le monde.

Résumer et organiser les points de connaissance de la classe en ES6

【Recommandations associées : Tutoriel vidéo javascript, front-end web

Introduction à la classe

Le JS traditionnel n'a que le concept d'objets, pas de classes, car JS est un langage orienté objet basé sur sur les prototypes. La caractéristique des objets prototypes est de partager toutes les propriétés avec les nouveaux objets.

ES6 introduit le concept de classe. Les classes peuvent être définies via le mot-clé class. Il s'agit d'un langage orienté objet qui correspond davantage à ce que nous comprenons habituellement.

class Person{   //定义一个名为Person的类
    // 构造函数,用来接受参数
    constructor(x,y){
        this.x = x;    //this代表的是实例对象
        this.y = y;
    }
    todoSome(){  //这是个类的方法,不需要加function,有多个方法也不用逗号隔开
        alert(this.x + "的年龄是" +this.y+"岁");
    }
}
export default  Person;
Copier après la connexion

Méthodes statiques et propriétés statiques

Les méthodes statiques et les propriétés statiques sont des propriétés et des méthodes qui utilisent le mot-clé statique

Méthodes statiques

static classMethod(){
		console.log('123456')
	}
Copier après la connexion
  • Les méthodes statiques ne seront pas héritées par les sous-classes, et les sous-classes ne peuvent pas Ceci en appelant la méthode statique
  • pointe vers la classe, pas vers l'instance de la classe. Par conséquent, les méthodes statiques ne peuvent être appelées que via des noms de classe, pas via des instances. Les propriétés statiques ne peuvent pas être héritées par les sous-classes, et les sous-classes ne peuvent pas être appelées. appelé via Appelé par le nom de la classe, il ne peut pas être appelé par l'instance de la classe
  • l'héritage de classe extends

la classe peut être héritée en utilisant le mot-clé extends Héritage ES6, super() doit être utilisé dans le constructeur de la sous-classe . Parce que l'héritage ES6 y ajoute d'abord les attributs et les méthodes de l'objet d'instance de classe parent, puis appelle le constructeur de la sous-classe pour le modifier. Si la sous-classe ne définit pas de méthode constructeur, super() l'ajoutera par défaut. la sous-classe héritera des méthodes et des attributs de la classe parent, mais les méthodes et attributs statiques doivent être appelés via le nom de classe de la sous-classe

let p = new Point();
p.classMethod();  // 报错
Copier après la connexion
    la fonction de valeur de la classe getter et la fonction de stockage setter
  • getter et setter sont les attributs donnés à la classe Utilisé pour lire et transmettre des valeurs.
  • Le getter de la fonction de valeur et le setter de la fonction de stockage peuvent personnaliser l'affectation et le comportement de la valeur. Lorsqu'une propriété n'a qu'un getter et aucun setter, la propriété est une propriété en lecture seule et ne peut pas se voir attribuer de valeur, ni être initialisée. pour la première fois.

Si la variable est définie comme privée (définie en dehors des accolades de la classe), vous ne pouvez utiliser que des getters sans setters.

static prop = 1 ;  // 静态属性
Copier après la connexion
  • Comment utiliser :
  • import classtest from "./classtest";  //先引入父类
    class Man extends classtest{
        constructor(x,y){   //构造函数尽量与父类参数保持一致
            super();   //利用super()关键字,这个必须放在子类构造函数中的第一位置
            this.x = x;
            this.y = y;
        }
    }
    export default  Man;
    Copier après la connexion
    Remarques :
  • 1. Lors de la définition d'une méthode dans une classe, vous ne pouvez pas ajouter le mot-clé function à la méthode, car le constructeur en JS est défini avec une fonction, et les deux sont séparé.
  • 2. Ne séparez pas toutes les méthodes par des virgules, sinon une erreur sera signalée.

    【Recommandations associées :

    tutoriel vidéo javascript

    ,

    front-end web

    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!

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

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment inverser un tableau dans ES6 Comment inverser un tableau dans ES6 Oct 26, 2022 pm 06:19 PM

Comment inverser un tableau dans ES6

L'async est-il pour es6 ou es7 ? L'async est-il pour es6 ou es7 ? Jan 29, 2023 pm 05:36 PM

L'async est-il pour es6 ou es7 ?

Comment trouver différents éléments dans deux tableaux dans Es6 Comment trouver différents éléments dans deux tableaux dans Es6 Nov 01, 2022 pm 06:07 PM

Comment trouver différents éléments dans deux tableaux dans Es6

Pourquoi le mini-programme doit-il convertir es6 en es5 ? Pourquoi le mini-programme doit-il convertir es6 en es5 ? Nov 21, 2022 pm 06:15 PM

Pourquoi le mini-programme doit-il convertir es6 en es5 ?

Est-ce qu'il faut une syntaxe es6 ? Est-ce qu'il faut une syntaxe es6 ? Oct 21, 2022 pm 04:09 PM

Est-ce qu'il faut une syntaxe es6 ?

Est-ce que es2015 est identique à es6 ? Est-ce que es2015 est identique à es6 ? Oct 25, 2022 pm 06:51 PM

Est-ce que es2015 est identique à es6 ?

La carte es6 est-elle commandée ? La carte es6 est-elle commandée ? Nov 03, 2022 pm 07:05 PM

La carte es6 est-elle commandée ?

Que signifie la zone morte temporaire es6 ? Que signifie la zone morte temporaire es6 ? Jan 03, 2023 pm 03:56 PM

Que signifie la zone morte temporaire es6 ?

See all articles