单例模式 singleton

在真实项目中,为了实现模块开发或者团队协作开发,我们经常应用单例模式,--一般业务逻辑部分的代码都是依托单例模式设计规划的。

(单例模的由来)

》long long ago `~~~~js中都是值类型,没有引用数据类型。

var age = 12;

var age = 26;



复制代码

>>如果后编写的代码,创建的变理或是函数名和之前的一样,会把之前的替换,代码冲突。-- 全局变量污染,
 全局变量冲突。把描述同一件事的特征进行归纳,放在一起,看下面的就是单例模式,就是对象复制代码

var person1={
     age : "12"
}
var person2= {
    age : "26"
}

//调用:
person1.age
person2.age
>>这样就不冲突了。

复制代码

上面这种就是单例 --》我们把对象数据类型实现-》把描述同一件事件的属性或者特征归纳汇总在一起,以此避免全局变量冲突问题,的方式和思想叫做******单例模式*******。

singleton 不仅仅是对象名了,在单例模式中,singleton称为“命名空间->nameSpace把描述同一件事务的属性或者方法存入在某一个命名空间下,多个命名中的属性和方法是互不干扰的。

var singleton =  {
    nameSpace1:{
      xxx:xxx,
      ...
    },
    nameSpace2:{
     xxx:xxx,
     .... 
   }
}复制代码

使用单例模式实现模快开发

》模块化开发 

把团队协作开发的是时候,我们常会把一个复杂而面,按照具体的功能划分成为不同的模块。

//张三: 搜索模块
var  searchModel = {
    sumbmit:function(){}
    ....
}


//李四: 天气模块
var weatherModel ={
    setWeather:function(){},
   ....
}
//王兰:
var showModel = {
    show:function(){}
    //调用李四的方法
     weaterModel.setWeater();
     this.show();
}
 运行王兰的方法:
 showMode.show();
//复制代码



公共模块

var utils = {
    show:function(){}
}复制代码



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值