1. 构造函数模式
定义:通过new关键字来执行函数时,此时函数体就是构造函数,并且会自动调用
执行:通过new关键字来执行构造函数
1.1 构造函数与普通函数的区别
1. 构造函数必须通过new关键字调用
2. 构造函数和普通函数内的this指向不一致,构造函数中的this指向新对象,而普通函数指向window
1.2 注意点
1. 构造函数本质上就是普通函数。
2. 任何函数,只要通过new操作符在调用,那它都是可以作为构造函数
2. typeof与instanceof的区别
typeof一般用于基本类型判断,不能识别具体对象类型
instanceof一般用于对象的判断,可以识别具体对象的所属
3. js原型
通过new关键字来创建的函数实例,会自动指向函数的原型块
注意点:
1. 通过对象访问属性时,先找实例有没有该属性,如果实例没有,在搜索原型找
2. 通过对象名.属性名来赋值的不能修改原型属性的值(只能操作本实例下的属性)
3. 创建的对象要修改原型值需要通过__proto__来修改
3.1 原型链
多层原型指向