ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

JS-单例设计模式

2026/8/31 9:43:56 拓冰建站 浏览量
JS-单例设计模式

设计模式:针对特定问题提出的简洁优化的解决方案

  • 构造函数或类仅仅只能实例化一次,得到一个实例对象
  • 比如:工具类
    • 在项目中使用工具类实例对象时,每一个实例对象的属性方法与功能作用都是一样的
    • 那么在项目中如果每次使用都需要重新实例化一个工具类对象,这样会造成内存浪费
      • 解决方案:工具类仅仅只实例化一次,得到一个实例对象,后续的每次使用则都直接使用该实例对象
        • 此时就可以使用单例设计模式来书写工具类
// 利用闭包函数封装
let singleton = (function() {// 工具类class Utils { }let tool;return function () {// 每次使用都判断tool中是否已存在实例对象if (!tool) tool = new Utils();return tool;}
})();let t1 = singleton();
let t2 = singleton();
console.log(t1 === t2); // true