Maison >interface Web >js tutoriel >Comment implémenter le modèle Singleton en JavaScript ?

Comment implémenter le modèle Singleton en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-04 00:00:17765parcourir

How to Implement the Singleton Pattern in JavaScript?

Comment créer un singleton en JavaScript

En JavaScript, un modèle singleton garantit qu'une seule instance d'une classe ou d'un objet peut être créée . Le moyen le plus simple d'implémenter un singleton consiste à utiliser un littéral d'objet :

var myInstance = {
  method1: function () {
    // ...
  },
  method2: function () {
    // ...
  }
};

Pour les membres privés, utilisez une expression de fonction :

var myInstance = (function() {
  var privateVar = '';

  function privateMethod () {
    // ...
  }

  return { // public interface
    publicMethod1: function () {
      // All private members are accessible here
    },
    publicMethod2: function () {
    }
  };
})();

Ce modèle, connu sous le nom de modèle de module, encapsule membres privés via des fermetures.

Pour éviter les modifications, utilisez Object.freeze :

Object.freeze(myInstance);

Dans ES6, utilisez les modules ES :

// my-singleton.js
const somePrivateState = []

function privateFn () {
  // ...
}

export default {
  method1() {
    // ...
  },
  method2() {
    // ...
  }
}

Puis importez-le :

import myInstance from './my-singleton.js'
// ...

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