ES之值类型以及堆和栈
2018-06-24 00:48:44来源:未知 阅读 ()
ES的数据类型:
原始类型(值存在栈内存中): Number、String Boolean、undefined、null
charAt(index)返回该index所在的字节,charCodeAt(index)返回该index所在字节的Unicode值。
undefined和null不能和数字进行比较。
引用类型(值存在堆内存中): Object、Function、Array、Date、Math、RegExp ...
______________________________________________________________________________________
堆(heap)和栈(stack)
栈内存:
将栈当做一栋房子,房子里面有很多房间,此时的房间名为系统定义的二进制数字,
当声明一个变量(变量声明永远在栈中,与赋的值无关)时栈为它分配一个房间,房间名为变量名,
当未赋值时,房间里面系统默认放undefined,当变量赋原始类型值时,房间内放该原始值,
当变量赋引用类型时,房间内放置该引用值在堆中的地址。
栈的特性:先进去的东西后出来,后进去的东西先出来。
堆内存:
堆内存也可以看做一个房子,堆内存的房间放的是引用类型的值的集合,而指向该房间的地址存放在栈内存的房间里。
原始值具有不可改变的特性:
比如将一个原始值放在一个房间里时,该值就不能再取出来了,
除非栈内存满了,它的值就会被新的值覆盖,这种方式称为形成二次覆盖。
若栈内存没满,当一个变量再次赋值时,该变量就会脱离原来的房间,去占据下一个房间,并把新赋的值放进去。
旧值的房间名就再次变成了栈内存的一串标准数字。
栈内存中赋值属于拷贝: 拷贝的是一个原始值或引用地址。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 浅谈JS的基础类型与引用类型 2020-02-29
- jquery操作checked属性以及disabled属性的多种方法 2019-11-24
- JavaScript基础知识之数据类型 2019-10-12
- JavaScript之引用类型介绍 2019-10-12
- JavaScript之基本包装类型 2019-08-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash