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

本文深入讲解了JavaScript中的几种常用设计模式,包括单例模式、工厂模式及构造函数模式。通过具体示例阐述了这些模式的实现方式及其在实际开发中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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 // 去掉,无需手动返回
}
“`

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值