JavaScript 中单例模式的简洁实现
单例模式确保类只能存在一个实例。 JavaScript 提供了多种有效实现此模式的方法。
方法 1:简单对象文字
一种简单的方法是创建对象文字,然后将其分配给变量。这样可以轻松访问单例实例的方法和属性。
var myInstance = { method1: function () {}, method2: function () {} };
方法 2:基于闭包的 Singleton
要创建私有成员,您可以使用模块模式,其中涉及使用闭包。
var myInstance = (function() { var privateVar = ''; function privateMethod () {} return { publicMethod1: function () {}, publicMethod2: function () {} }; })();
方法 3:ES5 对象冻结
为了防止单例对象被修改,可以使用Object.freeze方法冻结它。
Object.freeze(myInstance);
方法四:ES模块单例
在 ES6 中,您可以使用带有私有属性的模块来定义单例状态。
// my-singleton.js const privateState = []; export default { method1() {}, method2() {} };
// usage import myInstance from './my-singleton.js';
以上是如何在 JavaScript 中高效实现单例模式?的详细内容。更多信息请关注PHP中文网其他相关文章!