var LazySingle = ( function () {
// 单例引用
var _instance = null;
// 单例
function Single() {
return {
// 这里定义私有属性和方法
publicMethod : function () {},
publicProperty : '1.0'
}
}
// 获取单例接口
return function () {
// 如果为创建单例将创建单例
if ( ! _instance ) {
_instance = Single();
}
// 返回单例
return _instance;
}
} )();
我不是太理解,什么是惰性单例,还有这个惰性单例的用途是什么呢?希望大神们给小白解释一下好吗?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
惰性单例就是你使用的时候才去创建的单例,不是上来就有的。
这是一个非惰性单例,你比较一下。惰性单例你使用的时候是
LazySingle(),而非惰性则是LazySingle单例模式主要作用是,在应用程序中一个类只有一个实例存在。因此可以节约系统资源,对于一些需要频繁创建和销毁的对象,单例模式无疑可以提高系统的性能。
惰性单例的意思是,只有在用户需要用到这个单例对象时,才去创建它,而不是在系统启动的时候,就把所有单例对象创建好。