JS基础-概念
一、JS 的一些名词概念
什么是作用域?
变量存在的范围。
可分为全局作用域和函数作用域,ES6 新增块级作用域。
什么是闭包?
闭包就是能够读取其他函数内部变量的函数。
- 闭包的形式:函数内部定义函数
- 本质上闭包就是将函数内部和外部连接起来的一座桥梁
闭包的作用:
- 可以读取函数内部变量
- 让这些变量始终保持在内存中,即闭包可以使得它诞生的环境一直存在。
- 封装对象的私有属性和私有方法
什么是构造函数?
用于构造(生成)实例的一个函数,使实例拥有构造函数内定于的属性和方法。
什么是实例对象?
实例对象就是通过 new 构造函数生成的,拥有构造函数内定于的属性和方法的一个对象。
什么是 this?
就是属性或方法当前所在的对象,指向当前运行环境(对象)
什么是原型?
每个函数都有一个 prototype 属性,指向一个对象,该对象称为原型对象。
什么是原型链?
所有对象都有自己的原型对象,由于原型对象也是对象,因此它也有自己的原型,这就会形成一个原型链。
最顶层的原型是 Object.prototype。
读取对象属性时,JS 会先在对象自身上找,找到就直接返回,如果找不到,会到原型上找,如果还是找不到,就会去原型的原型上找,最终会到最顶层的 Object.prototype 上找,还是找不到就会返回 undefined。
什么是 constructor?
prototype 原型对象都有一个 constructor 属性,默认指向 prototype 对象所在的构造函数。
什么是包装对象?
包装对象指的是将原始类型(数字、字符串、布尔值)进行实例化。
评论
LivereValine