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!