JavaScript - 使用工厂方法创建对象 和 构造函数


前言

把大量的重复性的代码统一放到一个方法或者函数里, 直接调用函数创建对象.

一、示例

<script type="text/javascript">
    // 工厂方法
    function createObj(name){
        // 创建一个新对象
        var obj = new Object();
        // 给对象赋值
        obj.name = name;

        // 将新对象返回
        return obj
    }

    var obj2 = createObj("swk");
    console.log(obj2.name)

</script>

使用工厂方法创建的对象, 使用的构造函数都是object

一、创建一个构造函数

构造函数就是一个普通函数, 创建方式和普通函数一样
不同的是构造函数习惯上首字母大写

<script type="text/javascript">
        
   function Person(){

    }
    var per = new Person()

</script>

1.调用

构造函数和普通函数的区别就是调用方式不同
普通函数是直接调用.

<script type="text/javascript">
        
   function Person(){

    }

    var per = new Person();

    console.log(per);  // Person

</script>

2. 构造函数的执行流程

  1. 立刻创建一个新的对象
  2. 将新建的对象设置为函数中this, 在构造函数中可以使用this来引用新建的对象
  3. 逐行执行函数的代码
  4. 将新建的对象作为返回值返回
<script type="text/javascript">
        
    function Person(){
        this.name = "swk"
    }

    var per = new Person();

    console.log(per.name);  // swk

</script>

3. 使用instanceof可以检查一个对象是否是一个类的实例

  • 语法 : 对象 instanceof 构造函数
<script type="text/javascript">
        
    function Person(){
        this.name = "swk"
    }

    var per = new Person();

    console.log(per instanceof Person);  // true

</script>

所有的对象都是Object的后代

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值