JS基本数据类型和引用数据类型
自己写的博客还是没事多看看,哎,写过了用的时候自己都不记得了!!!置顶提醒自己居然犯了一个这么低级的错误
-
基本数据类型:基本类型值指的是那些保存在栈内存中的简单数据段,即这种值完全保存在内存中的一个位置;
基本数据类型的达到非比寻常调用赋值不会改变原来的值
个人理解基本数据类型就是一段值
复制代码1
2
3
4
5var a=1; var b=a; b=2; console.log(a); //1 console.log(b); //2
- 引用数据类型:。是指那些保存堆内存中的对象,意思是变量中保存的实际上只是一个指针,这个指针指向内存中的另一个位置,位置该对象保存
个人理解引用数据类型就是多段值, (比如一个对象)
复制代码引用数据类型时b改变了值也把一个的值改变了,这就牵涉到一个深拷贝和浅拷贝的问题了,,1
2
3
4
5var a={x:1,z:2}; var b=a; a.x=123123; console.log(a); //{x:123123,z:2} console.log(b); //{x:123123,z:2}
深浅拷贝以后慢慢补充....(深浅拷贝问题只存在于引用数据类型中);
整理:
1)基本数据类型:在将一个保存着原始值的变量复制给另一个变量时,会将原始值的副本赋值给新变量,此后这两个变量是完全独立的,他们只是拥有相同的值而已。可以直接访问。
2)引用数据类型:在将一个保存着对象内存地址的变量复制给另一个变量时,会把这个内存地址赋值给新变量,也就是说这两个变量都指向了堆内存中的同一个对象,他们中任何一个作出的改变都会反映在另一个身上。这里要理解的一点就是,复制对象时并不会在堆内存中新生成一个一模一样的对象,只是多了一个保存指向这个对象指针的变量罢了)。通过他在内存中的地址然后按照这个地址去取对应的值。
最后
以上就是无聊毛豆最近收集整理的关于js基本数据类型和引用数据类型的全部内容,更多相关js基本数据类型和引用数据类型内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复