JS构造函数
1.使用new调用
2.通常以大写开头
3.this指向创建要的对象
4.返回一个对象,且一般没有retrun
让我们定义一个简单的构造函数
function Key(){
this.a = 'v'
}
// 通过new调用
let obj = new Key()
console.log(obj.a)
你会发现控制台输出
v
如果构造函数内部有return语句,而且return后面跟着一个复杂数据类型(对象,数组等),new命令会返回return语句指定的对象;如果return语句后面跟着一个简单数据类型(字符串,布尔值,数字等),则会忽略return语句,返回this对象。
另一方面,如果对普通函数(内部没有this关键字的函数)使用new命令,则会返回一个空对象。
个人认为构造函数和普通函数,写法上可能大同小异,主要看是否用new调用,需要注意的是this指向问题,以及retrun语句。