Maison  >  Article  >  interface Web  >  Introduction au modèle de proxy dans les modèles de conception JavaScript

Introduction au modèle de proxy dans les modèles de conception JavaScript

不言
不言original
2018-07-03 14:24:211454parcourir

Cet article présente principalement le mode proxy du modèle de conception JavaScript, décrit brièvement le concept, la fonction et la composition du mode proxy, et combine l'exemple de formulaire avec une analyse plus détaillée de la définition et de l'utilisation du mode proxy JavaScript. Amis qui en ont besoin Vous pouvez vous référer à

Cet article explique le modèle de proxy des modèles de conception JavaScript avec des exemples. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1. Le concept de modèle d'agence

Agent, comme son nom l'indique, est d'aider les autres à faire des choses. modèle d'agence comme suit :

Le mode agent (proxy) fournit un proxy pour d'autres objets pour contrôler l'accès à cet objet. Le modèle de proxy permet aux objets proxy de contrôler les références à des objets spécifiques. Un proxy peut être presque n'importe quel objet : un fichier, une ressource, un objet en mémoire ou quelque chose de difficile à copier.

Explication : Une agence immobilière peut aider le vendeur à vendre la maison à l'acheteur. En attendant, le vendeur peut simplement dire le prix de vente de la maison, et l'acheteur peut également. proposer le type de maison qu'il souhaite acheter. Un intermédiaire peut l'aider à gérer les étapes intermédiaires. Finalement, un accord est conclu. Un intermédiaire peut agir en tant qu’agent pour de nombreuses questions de vente et de location de maisons en même temps.

La composition du modèle de proxy :

Rôle abstrait : Méthodes métier implémentées en déclarant des rôles réels via des interfaces ou des classes abstraites.

Rôle d'agent : implémente un rôle abstrait et est un agent du rôle réel. Il implémente la méthode abstraite via la méthode de logique métier du rôle réel et peut attacher ses propres opérations.

Rôle réel : implémenter le rôle abstrait, définir la logique métier à implémenter par le rôle réel et être appelé par le rôle d'agent.

2. Les fonctions et précautions du mode proxy

Fonctions du mode :

1. Proxy distant (un objet proxy localement des objets dans différents espaces)

2. Proxy virtuel (créez des objets coûteux selon vos besoins, tels que le rendu de pages Web et utilisez temporairement des espaces réservés pour remplacer les images réelles)

3. Proxy de sécurité (contrôlez les droits d'accès des objets confirmés)

4. Guidage intelligent (appel du proxy d'objet pour gérer d'autres choses telles que le mécanisme de récupération de place)

Remarques :

1. N'abusez pas du proxy, parfois cela ne fait qu'ajouter de la complexité au processus. code

3. Code du mode Agent et résumé pratique

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title>代理模式</title>
</head>
<body>
<script>
 //代理模式需要三方
 //1.买家
 function maijia(){
  this.name = "小明";
  this.money = "30万";
 }
 //2.中介
 function zhongjie(){
 }
 zhongjie.prototype.maifang = function(){
  //new fongdong(new maijia()).maifang("20万");
  new fongdong(new maijia()).maifang("20万");
 }
 //3.卖家
 function fongdong(maijia){
  this.maijia_name = maijia.name;
  this.maijia_money = maijia.money;
  this.maifang = function(money){
//   console.log("收到了来自【"+this.maijia_name+"】"+money+"人民币");
   console.log("收到了来自【"+this.maijia_name+"】"+this.maijia_money+"人民币");
  }
 }
 (new zhongjie()).maifang();
</script>
<script>
// A2B
 function A(){
  this.money = "20RMB";
 }
 function to(){
  if(!(this instanceof to)){
   return new to;
  }
 }
 to.prototype.maifang = function(){
  var a = new A();
  new B().maifang(a.money);
 }
 function B(){
  this.maifang = function(money){
   console.log("收到了钱"+money);
  }
 }
 (new to()).maifang();
 to().maifang();
</script>
</body>
</html>

L'effet de fonctionnement est le suivant :

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'utilisation d'objets RegExp et de crochets dans les expressions régulières JS

jQuery empêche la propagation d'événements Exemple analyse

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:
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