构造函数与普通函数的区别
不同点:
(1)普通函数如果内部没有return的时候,返回的是undefined
function fn() {
}
console.log(fn()); //undefined
(2)构造函数内部没有return的时候,返回的是构造出来的对象
function Fn() {
}
console.log(new Fn()); //Fn
new Fn();
(3)普通函数内部的this指向,指的是window
function Fn() {
console.log(this);
}
new Fn();
(4)构造函数内部的this指向,指向的是当前对象
function Fn() {
console.log(this);
}
new Fn();