构造函数

1)什么是js构造函数
简单来说JavaScript里面能通过new 关键词创建一个实例的函数,我们称之为构造函数。

2)构造函数的作用
当我们处理一些重复性工作时就常用到构造函数,举个例子我要录入每一个员工的信息:

     p1 = { name: 'coco', age: 28, sex: 'boy' };
     p2 = { name: 'lili', age: 20, sex: 'girl' };
     p3 = { name: 'gang', age: 18, sex: 'boy' };
     ...

可以看到每一个员工对象都共同的属性name、age、sex如果我一个个写就比较麻烦,这时就可以使用构造函数帮我们完成。

     function Foo(name,age,sex){
        this.name = name;
        this.age= age;
        this.sex=sex;
        this.say=function(){
            console.log("my name is "+ this.name+" ,age is "+ this.age+ ", and sex is "+ this.sex)
        }
     }
     const p1 = new Foo('coco', 28, 'boy')
     const p2 = new Foo('lili', 20, 'girl')
     const p3 = new Foo('gang', 18, 'boy')
     p1.say()
     //my name is coco ,age is 28, and sex is boy

3)构造函数执行过程

     function Foo(name,age,sex){
        this.name = name;
        this.age= age;
        this.sex=sex;
        this.say=function(){
            console.log("my name is "+ this.name+" ,age is "+ this.age+ ", and sex is "+ this.sex)
        }
     }
     const p1 = new Foo('coco', 28, 'boy')
  1. 通过new操作符实例化一个新的空对象,实质是在计算机内存中分配一个新的内存空间,我称实例p1。
  2. 构造函数内部this指向实例p1。
  3. 执行构造函数内部代码块,给this添加属性,和方法,实质就是将给实例p1添加属性和方法。
  4. 默认返回this,就是实例化对象p1。

4)构造函数返回值

  1. 构造函数默认返回this对象。
	   function Foo(){
	       this.name = 'coco';
	   }
	   const p4 = new Foo()
	   console.log(p4)
	   //{name: "coco"}
  1. 构造函数也可返回JavaScript引用类型(array,object,function)。
	 function Foo(){
	     this.name = 'coco';
	     return {name:'lili'}
	  }
     const p4 = new Foo()
     console.log(p4)
     // {name:'lili'}
  1. 构造函数返回非JavaScript引用类型时,还是返回this对象。
    function Foo1() {
        this.name = 'coco';
        return 'lili'
    }
    const p4 = new Foo()
    console.log(p4)
    // {name: "coco"}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值