普通函数和构造函数

一、普通函数和构造函数有什么区别?


1.普通函数:函数名小写,调用方式直接就是函数名加括号,如有个abc方法,function abc(){};调用方式直接就是abc()。函数内的this指向的是window对象,如果添加属性也是为window添加属性,输出的时候要window.属性才会有输出。所以内部不建议用this。还有就是可以用return语句返回值
function Cat(){
alert('ac');

}
Cat();


2、构造函数一般都是用首字母大写的函数名字,含有new关键字。函数内的this指向该对象(abc),但前提下必须先是new abc(),这样才算构造函数,每new一次都是一个新的对象,this也不一样。构造函数默认不用return语句,默认返回this对象,当然也是可以用的,返回的是一个对象,如return { name: 'abc'}。其次,构造函数有属性方法。如下是构造函数

方法1:

function Cat(color,footer){

this.color=color;

this.footer=footer;

this.showColor=function(){

alert(this.color);

}

}

var cat=new Cat('white',4);

如果要showColor还要调用一次cat.showColor()才会执行方法

方法2:function Cat({};

Cat.prototype.color='white';

Cat.prototype.footer=4;

Cat.prototype.showColor=function(){

alert(this.color);

}

var cat=new Cat();

如果要showColor还要调用一次cat.showColor()才会执行方法

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值