js原型链和闭包
1 原型链
1.1 原型链是什么
1.2 原型链作用
2 闭包
2.1 闭包是什么
2.2 闭包特性
2.3 闭包缺点
2.4 闭包作用
1 原型链
1.1 原型链是什么
在JavaScript 中,每个对象都有一个指向它的原型对象的内部链接。这个原型对象又有自己的原型,直到某个对象的原型为 null 为止(也就是不再有原型指向),组成这条链的最后一环。这种一级一级的链结构就称为原型链(prototype chain)
1.2 原型链作用
因为es6之前,js没有类的概念,就需要原型链来充当这一角色。
2 闭包
2.1 闭包是什么
指有权访问另一个函数作用域中的变量的函数,比如在函数中创建函数,可以通过内部的函数访问外部的函数。
2.2 闭包特性
函数内函数、有权访问外部变量、变量不会被回收。
2.3 闭包缺点
常驻内存不被回收容易泄露。
2.4 闭包作用
希望一个变量常驻在内存中,避免污染全局变量,私有成员存在,用于设计私有方法和变量。