JS中常用的开发模式和思想

JS中常用的开发模式和思想

  • 单例模式(一个小对象)
var obj = {
    name: 'xiaoming'
    age: '16',
    introduce: function() {
        console.log('my name is' + this.name + ',my age is' + this.age)
    }
}
  • 工厂模式(一个小函数)
  • 从单例模式到工厂模式是函数的封装,即将实现相同功能的代码放在函数中
  • 函数的封装:低耦合和高内聚,减少冗余代码,提高重复利用率
function factory (name, age) {
    var obj = {}
    obj.name = name
    obj.age = age
    obj.introduce = function() {
        console.log('my name is' + this.name + ',my age is' + this.age)
    }
    return obj
}
- 构造函数模式:创建一个自定义类
- 与工厂模式的区别
1. 用new执行
2. 属性名首字母建议大写
3. 无需手动创建对象,构造函数中,浏览器会自动创建一个对象,也就是当前类的一个实例
4. 无需手动return,浏览器会把创建的实例返回
- 类是函数类型
- 实例是对象
- 类也具有一个普通函数的性质,私有作用域,预解释
- 实例和实例之前是单独的个体,都有自己的私有属性
- 不传参数是,可以省略括号,new factory
- 构造函数内的var出来的变量,只是构造函数作为普通函数一面时的私有变量
- 构造函数内手动return 一个引用类型,会将构造函数默认返回的实例覆盖,return基本数据类型则不会覆盖实例
- 检测实例属于类:instanceof

function factory (name, age) {
var obj = {} // 去掉,构造函数中,浏览器会自动创建一个对象,也就是当前类的一个实例
// this 为当前实例
this.name = name
this.age = age
this.introduce = function() {
console.log(‘my name is’ + this.name + ‘,my age is’ + this.age)
}
return obj // 去掉,无需手动返回
}
“`

猜你喜欢

转载自blog.csdn.net/millions_02/article/details/79787412