JavaScript巩固篇(一)——数据类型与全局变量、局部变量、垃圾回收机制、存储方式、生命周期...

知识要点

  1. 数据类型
  2. 存储方式
  3. 全局变量与局部变量
  4. 变量的生命周期
  5. 垃圾回收机制

知识概览

 

数据类型

  JavaScript的数据类型分为:基本类型、引用类型

  本质区别: 

    基本数据类型的变量实际值存储在栈中

    引用数据类型,据名知意,引用数据类型的实际值存储在堆中,变量值实际存储的是实际值存储在堆中的地址

  见图:

  

综上思考复制?

数据类型的复制

  基本数据类型与引用数据类型的的复制区别综上显而易见

  1 基本数据类型当 var a = 1; var b = a ;的时候 b 获取到的是实际值,所以在内存空间中会新增一个存储你值为1的b的内存空间, 示意图如下

         

 

  2. 引用数据类型当var a = {name: 'lili'}; var b = a;的时候b获取到时存储在变量a中的地址, 所以再内存空间中会新增一个存储着地址的变量b, 而a , b 指向同一个内存堆中,示意图如下

    

大致了解之后,思考一下全局变量和局部变量的生命周期?

全局变量与局部变量生命周期

  1. 全局变量: 在页面关闭后结束

  2. 局部变量: 在执行的作用域块执行完成后结束

综上, 局部变量会在其函数块执行之后自动解除,对于引用类型的局部作用域其引用关系会自动解除

   大多数的引用类型的全局变量需要手动解除引用关系

 

 

 

 

    

  

转载于:https://www.cnblogs.com/timetimetime/p/10509081.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值