第4章、变量,作用于和内存问题

4.1 基本类型和引用类型的值

基本类型值指的是简单的数据段,包括5种:Undefined、Null、Boolean、Number、String。
引用类型指的是可能由多个值构成的对象。

类型检测:
检测基本类型时,使用typeof操作符确定一个变量是字符串、数值、布尔值、还是undefined,对null的检测会返回"Object"。
检测引用类型时,使用instanceof操作符,如果变量是给定引用类型的实例,则instanceof操作符返回true。

var a = [];
console.log(a instanceof Array); // true

所有引用类型的值都是Object的实例,所以检测引用类型值和Object构造函数时始终返回true。检测基本类型值时,始终返回false。

4.2 执行环节及作用域

全局执行环境是最外围的执行环境,在Web浏览器中,全局执行环境是window对象,所有全局变量和函数都是作为window对象的属性和方法创建的。

内部环境可以通过作用域链访问所有的外部环境,每个环境都可以向上搜索作用域链,但不能向下搜索。

var声明的变量会自动添加到最近的环境中,初始化变量没有使用var声明时,该变量自动被添加到全局作用域。

4.3 内存问题

优化内存占用的最佳方式,就是为执行中的代码只保存必要的数据,一旦数据不再有用,就将其设置为null来释放其引用。等待垃圾收集器将其回收。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容