1. 作用域
作用域就是代码的执行环境,全局执行环境就是全局作用域,函数的执行环境就是私有作用域,它们都是栈内存。
2. 作用域链
当代码在一个执行环境中执行时,会创建变量对象的一个作用域链(作用域形成的链条)
3. 原型
每当定义一个数据类型的时候,都会天生自带一个prototype属性,这个属性指向函数的原型对象,并且这个属性是一个对象数据类型的值。
4. 原型链
在JavaScript中通过prototype对象指向父类对象,直到指向Object对象为止,这样就形成了一个原型指向的联调,称为原型链。当访问一个对象的属性或方法时,它会在对象自身中寻找,如果有则直接使用,如果没有则会去原型对象中查找,如果找到则直接使用