js单例模式的两种方案

这篇文章介绍了js单例模式的两种方案,有需要的朋友可以参考一下

方案一:利用闭包的两个作用,可以变通地读到内部的变量,二是可以让这些变量始终在内存中。

复制代码 代码如下:

//方案一
    var SingletonTester = (function () {
        //单例方法
        function Singleton(args) {
            var args = args || {};
            this.name = 'SingletonTester'; //方法对外的属性,另外一种方式就是返回对象
            this.pointX = args.pointX || 6;
            this.pointY = args.pointY || 10;
        }

        //单例实例
        var instance;

        //返回对象
        return {
            name: 'SingletonTester',

            getInstance: function (args) {
                if (instance === undefined) {
                    instance = new Singleton(args);
                }
                return instance;
            }
        };
    })(); //直接执行该方法

    //测试
    var test = SingletonTester.getInstance({ pointX: 5 });
    console.log(test.pointX);

以上就是js单例模式的两种方案的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » JavaScript 教程