构造函数:构造函数简单的讲,即定义出来专供new 式调用的函数。当任意一个普通函数用于创建一类对象时,它就被称作构造函数,或构造器。
构造函数和普通函数的区别:
1.构造函数一般首字母大写 如function Student(){{ },而普通函数一般首字母小写。
2. 对于任意函数,使用new操作符调用,那么它就是构造函数;不使用new操作符调用,那么它就是普通函数。
- 使用new操作符调用构造函数时,会经历(1)创建一个新对象;(2)将构造函数作用域赋给新对象(使this指向该新对象);(3)执行构造函数代码;(4)返回新对象;4个阶段。
如:var obj ={};
obj.__proto__ = CO.prototype; //继承原有函数的原型对象
CO.call(obj); //改变原有构造函数的this指向,构造函数作用域赋给新对象
return obj;