我在javascript中实现了单例模式。
以下是
var Student = (function(){
var obj = {};
return {
getInstance : function(){
return obj;
}
}
})();
var student1 = Student.getInstance();
student1.name = "Mejam Kinavchisko";
var student2 = Student.getInstance();
student2.age = 23;
console.log(student1.name);
console.log(student2.name);
console.log(student2.age);
console.log(student1.age);
输出如下,
Mejam Kinavchisko
Mejam Kinavchisko
23
23
在上面的示例中,您可以查看给定实例是否添加了新属性“name”并分配 一些价值,同样反映在另一个实例中。
即。 student1和student2指向同一个对象。
因此我不知道如果我在javascript中实现了Singleton Pattern?
答案 0 :(得分:0)
单例模式因此是已知的,因为它将类的实例化限制为单个对象。传统上,Singleton模式可以通过创建一个类来实现,该类使用一个方法创建一个新的类实例(如果不存在的话)。如果实例已经存在,它只返回对该对象的引用。
此处创建的两个对象的引用相同,因此viewForRow1
行为。
有关该主题的详细信息,请阅读Addy Osmani's guide to Javascript Design Patterns.
答案 1 :(得分:0)
是的,这是单身模式,这就是为什么student1和student2指向同一个对象。
有关信息,请参阅 http://www.dofactory.com/javascript/singleton-design-pattern