javascript中基本类型和引用类型的区别分析 基本类型和引用类型ECMAScript包含两个不同类型的值:基本类型值和引用类型值。基本类型值指的是简单的数据段;引用类型值指由多个值构成的对象。当我们把变量赋值给一个变量时,解析器首先要做的就是确认这个值是基本类型值还是引用类型值。常见的五种基本数据类型是:Undifined、Null、Boolean、Number和String。这五种基本数据类型可以直接操作保存在变量中的实际值。例子:var a=10;var b=a;b=20;console.log(a);10var bl=true;var bl1=bl;bl1=false;console.log(bl);true上面,b获取值是a值的一份拷贝,虽然,两个变量的值是相等,但是两个变量保存两不同的基本数据类型值。b只是保存了a复制的一个副本。所以,当b的值改变时,a的值依然是10;下面,两个Boolean变量bl和bl1同样是基本数据类型,同样保存两个不同的基本数据据类型值,bl1保存bl复制的一个副本。下图演示了这种基本数据类型赋值的过程:引用类型数据:javascript引用数据类型是保存在堆内存中的对象,与其它语言不同的是,你不可以直接访问堆内存空间中的位置和操作堆内存空间。只能通过操作对象的在栈内存中的引用地址。所以引用类型的数据,在栈内存中保存的实际上是对象在堆内存中的引用。WEB前端学习五 js什么是引用类型 三大引用类型,对象,数组,函数。引用类型和基本类型主要区别是引用类型存的是地址,但其实在JS中 万事万物皆对象,本质上来讲大家都可以算对象JS中有哪些基本类型和引用类型 八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。四种引用数据类型:接口 类 数组 枚举JS中引用类型的值指的是? new Box()就等于创建了一个对象,对百象就是引用度类型的引用类型相当于是内存地址,新创问建的答对象是放在堆中的var b=new Box();就是说新创建了一个对象,回返回的是该对象在堆中答的地址,将改地址赋给了b变量另外,Java,JavaScript都是这样的JavaScript中值类型和引用类型的区别 js的基本数据类型是按值传递,对象是按引用传递。按值传递的变量之间互不影响,比如var a=1;var b=a;a=2;变量a、b之间是按值传递,虽然a的值变了,但是并不影响b的值。而例子var a={name:'yy',age:26};var b=a;a.name=\"gg;这里的变量a、b指向的是同一个对象的引用地址,对a.name的操作直接改变了对象,自然b.name也变了。做一个不是太恰当的比喻,以前在学校的时候,用邮政速递收寄东西,如果是信件或者小件的东西,快递员会直接送到学校,如果是大件的包裹,往往你拿到的只是一个地址,这个地址指引你去附近的邮政拿到你自己的包裹。这大概就是js中值类型和引用类型的区别。以上的解释能帮助理解,但是还是有漏洞的。想深入理解的话建议找找js高级教程的书或者博客文章来看一看,了解一下堆栈的概念。
随机阅读
- 汽车刹车片间隙如何自调 刹车片与刹车盘间隙调的多少合适
- 中国月饼的十大品牌 资溪县 资府壹号
- 学战都市小说资源 需要轻小说……
- 大话战国怎么修改帮贡 大话战国
- 自来水水表磁性锁 水表前磁性阀门怎么打开?
- 中山市水云轩休闲会所 临沂沂景假日酒店怎么样?描述一下,和蓝海酒店比呢?
- 把自己的青春时光大量花在学习 CFA 和 CPA 上好吗? 升华拜克董秘
- 如何评价王师傅和毛毛在一起这件事? 王师傅和毛毛孩子
- 南阳市有哪些好的私立学校 南阳成达中学分数线
- 迁安毛家洼啥时候平改 迁安市毛洼离沙河驿镇沙窝铺多远
- 机动战队超改费用 (机动战队)作为一个刚玩不到一周的萌新(刚到lv30),我想知道、为
- 太阳能水温水位传感器两芯和四芯怎么转换 四芯水温水位传感器原理
- 武汉哪家劳务派遣机构比较靠谱? 武汉人力资源报考靠谱
- 认真审题沉着冷静 如何提高小学三年级学生的计算能力
- 梦幻足球联盟2017有几个中国人 梦幻足球联盟中超
- 上海市审计报告怎么查真伪查询
- 请问我刚才吃了猕猴桃过敏后服用了氟雷他定... 吃猕猴桃过敏记不吃什么
- 一个月多的宝宝总发出奇怪的声音和动静,求帮助!!! 我家儿子一个月零7天,每天总是会发出“嗯。。,嗯。。”声音很大,像大人在伸懒腰的动静,同时小脸涨到通红,并且腿紧缩着蜷着,手抓脸或者是头,拳打脚踢的,这样的动静白天相对好一点,只有在睡觉还没睡踏实的时候会
- 7、8月可能有一次大幅调整? 上海和记小菜招聘启示
- 三元桥汇购工作 北京科诺汇雅公司在哪?我家住在三元桥