Maison interface Web js tutoriel Une brève analyse du modèle d'usine abstraite JS_Connaissances de base

Une brève analyse du modèle d'usine abstraite JS_Connaissances de base

Dec 15, 2017 pm 01:48 PM
javascript 基础知识 模式

Cet article résume principalement l'expérience et le résumé de l'auteur lors de l'apprentissage de JSAbstract Factory Pattern Il existe JS analyse du code source, oui JS<.>Si vous êtes intéressé, suivez-nous et apprenez.

Voici les problèmes et exemples de code rencontrés par l'auteur au cours de son étude. Enfin, il résume également votre apprentissage sur le modèle d'usine abstraite JS.

Le modèle Abstract Factory (Abstract Factory) utilise l'abstraction de classe pour rendre l'entreprise adaptée à la création d'un cluster de classes de produits sans être responsable des instances d'un certain type de produit.

Il n'y a pas de

classe abstraite directe dans JS. Abstract est un mot réservé, mais il n'a pas encore été implémenté, nous devons donc générer une erreur dans la méthode de classe pour simuler l'abstrait. classe.Si nous héritons Si la méthode est appelée sans la remplacer dans la sous-classe, une erreur sera générée.


const Car = function() { }
Car.prototype.getPrice = function() {return new Error(&#39;抽象方法不能调用&#39;)}
Copier après la connexion


met en œuvre

pour Il existe un modèle de fabrique abstraite dans le langage objet . Premièrement, une classe abstraite est déclarée comme classe parent pour résumer les caractéristiques requises par un certain type de produit. La sous-classe qui hérite de la classe parent doit implémenter les méthodes. déclaré dans la classe parent pour implémenter la classe parent. Fonctions déclarées dans la classe :


/**
* 实现subType类对工厂类中的superType类型的抽象类的继承
* @param subType 要继承的类
* @param superType 工厂类中的抽象类type
*/
const VehicleFactory = function(subType, superType) {
 if (typeof VehicleFactory[superType] === &#39;function&#39;) {
  function F() {
   this.type = &#39;车辆&#39;
  } 
  F.prototype = new VehicleFactory[superType]()
  subType.constructor = subType
  subType.prototype = new F()        // 因为子类subType不仅需要继承superType对应的类的原型方法,还要继承其对象属性
 } else throw new Error(&#39;不存在该抽象类&#39;)
}
VehicleFactory.Car = function() {
 this.type = &#39;car&#39;
}
VehicleFactory.Car.prototype = {
 getPrice: function() {
  return new Error(&#39;抽象方法不可使用&#39;)
 },
 getSpeed: function() {
  return new Error(&#39;抽象方法不可使用&#39;)
 }
}
const BMW = function(price, speed) {
 this.price = price
 this.speed = speed
}
VehicleFactory(BMW, &#39;Car&#39;)    // 继承Car抽象类
BMW.prototype.getPrice = function() {    // 覆写getPrice方法
 console.log(`BWM price is ${this.price}`)
}
BMW.prototype.getSpeed = function() {
 console.log(`BWM speed is ${this.speed}`)
}
const baomai5 = new BMW(30, 99)
baomai5.getPrice()             // BWM price is 30
baomai5 instanceof VehicleFactory.Car    // true
Copier après la connexion


. Résumé

Grâce à l'usine abstraite, vous pouvez créer des produits d'un certain cluster de classes, et vous pouvez également utiliser instanceof pour vérifier la catégorie de produits, et également disposer des méthodes nécessaires pour ce cluster de classes .

Recommandations associées :

modèle d'usine abstrait javascript description détaillée_compétences javascript

Introduction au modèle d'usine abstrait des modèles de conception JavaScript_compétences javascript

Comment tester JS la vitesse de réponse d'ouverture du site Web cible

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

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)

À quoi sert le mode Ne pas déranger de WeChat ? À quoi sert le mode Ne pas déranger de WeChat ? Feb 23, 2024 pm 10:48 PM

Que signifie le mode Ne pas déranger de WeChat ? De nos jours, avec la popularité des smartphones et le développement rapide de l'Internet mobile, les plateformes de médias sociaux sont devenues un élément indispensable de la vie quotidienne des gens. WeChat est l’une des plateformes de médias sociaux les plus populaires en Chine, et presque tout le monde possède un compte WeChat. Nous pouvons communiquer avec nos amis, notre famille et nos collègues en temps réel via WeChat, partager des moments de notre vie et comprendre la situation actuelle de chacun. Cependant, à notre époque, nous sommes également inévitablement confrontés aux problèmes de surcharge d'informations et de fuite de la vie privée, en particulier pour ceux qui ont besoin de se concentrer ou de se concentrer.

Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 pm 02:54 PM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel Dec 17, 2023 pm 05:30 PM

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Le mode Ne pas déranger ne fonctionne pas sur iPhone : correctif Le mode Ne pas déranger ne fonctionne pas sur iPhone : correctif Apr 24, 2024 pm 04:50 PM

Même répondre à des appels en mode Ne pas déranger peut être une expérience très ennuyeuse. Comme son nom l'indique, le mode Ne pas déranger désactive toutes les notifications d'appels entrants et les alertes provenant d'e-mails, de messages, etc. Vous pouvez suivre ces ensembles de solutions pour résoudre ce problème. Correctif 1 – Activer le mode de mise au point Activez le mode de mise au point sur votre téléphone. Étape 1 – Faites glisser votre doigt depuis le haut pour accéder au Centre de contrôle. Étape 2 – Ensuite, activez le « Mode Focus » sur votre téléphone. Le mode Focus active le mode Ne pas déranger sur votre téléphone. Aucune alerte d’appel entrant n’apparaîtra sur votre téléphone. Correctif 2 – Modifier les paramètres du mode de mise au point S'il y a des problèmes dans les paramètres du mode de mise au point, vous devez les résoudre. Étape 1 – Ouvrez la fenêtre des paramètres de votre iPhone. Étape 2 – Ensuite, activez les paramètres du mode Focus

Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Dec 17, 2023 pm 12:09 PM

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 am 09:39 AM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel Dec 17, 2023 pm 05:13 PM

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous

Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Jan 05, 2024 pm 06:08 PM

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

See all articles