浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题


Posted in Javascript onSeptember 02, 2017

js 深浅拷贝问题

浅拷贝一般指的是基本类型的复制

深拷贝一般指引用类型的拷贝,把引用类型的值也拷贝出来

举例

h5的sessionStorage只能存放字符串,所以要存储json时就要把json使用JSON.stringify()把json转换成string,然后再用JSON.parse()转换成json数据

缺点:JSON.parse和JSON.stringify只支持IE9+以上

解决这个问题可以使用深度比那里拷贝方法

js 中内存分配问题(堆和栈)

js中基本类型类型一般是存储在栈中的。这些类型在内存中分别占有固定大小的空间,他们的值保存在栈空间,我们通过按值来访问的。

引用类型是大小不固定的数据,但是他们的地址大小是固定的,所以把地址存在栈中而值存在堆中

1、栈内存:存放基本类型。 堆内存:存放引用类型(在栈内存中存一个基本类型值保存对象在堆内存中的地址,用于引用这个对象。)

2、基本类型在当前执行环境结束时销毁,而引用类型不会随执行环境结束而销毁,只有当所有引用它的变量不存在时这个对象才被垃圾回收机制回收。

js 基础数据类型和引用类型

基础数据类型包括 number boolean string undefined null symbol

引用数据类型:array obj function

以上这篇浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript代码混淆综合解决方案-Javascript在线混淆器
Dec 18 Javascript
一直复略了的一个问题,关于表单重复提交
Feb 15 Javascript
封装了一个js图片轮换效果的函数
Sep 28 Javascript
node.js chat程序如何实现Ajax long-polling长链接刷新模式
Mar 13 Javascript
javascript确认框的三种使用方法
Dec 17 Javascript
js 中将多个逗号替换为一个逗号的代码
Jun 07 Javascript
多个jQuery版本共存的处理方案
Mar 17 Javascript
jquery-tips悬浮提示插件分享
Jul 31 Javascript
关于Function中的bind()示例详解
Dec 02 Javascript
jQuery length 和 size()区别总结
Apr 26 jQuery
Vue父子组建的简单通信之控制开关Switch的实现
Jun 04 Javascript
JS前端轻量fabric.js系列物体基类
Aug 05 Javascript
js es6系列教程 - 基于new.target属性与es5改造es6的类语法
Sep 02 #Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
Sep 02 #Javascript
使用vue-resource进行数据交互的实例
Sep 02 #Javascript
jquery tmpl模板(实例讲解)
Sep 02 #jQuery
自制简易打赏功能的实例
Sep 02 #Javascript
Vue使用vue-cli创建项目
Sep 01 #Javascript
vue 里面使用axios 和封装的示例代码
Sep 01 #Javascript
You might like
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
2011/12/25 PHP
php内存缓存实现方法
2015/01/24 PHP
优秀js开源框架-jQuery使用手册(1)
2007/03/10 Javascript
javascript实现tabs选项卡切换效果(扩展版)
2013/03/19 Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
2013/05/08 Javascript
jquery实现的可隐藏重现的靠边悬浮层实例代码
2013/05/27 Javascript
javaScript如何处理从java后台返回的list
2014/04/24 Javascript
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
基于dropdown.js实现的两款美观大气的二级导航菜单
2015/09/02 Javascript
详解Javacript和AngularJS中的Promises
2016/02/09 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
2016/06/16 Javascript
javascript使用 concat 方法对数组进行合并的方法
2016/09/08 Javascript
jquery.Jcrop结合JAVA后台实现图片裁剪上传实例
2016/11/05 Javascript
Vue表单及表单绑定方法
2018/09/04 Javascript
vue开发环境配置跨域的方法步骤
2019/01/16 Javascript
如何阻止移动端浏览器点击图片浏览
2020/08/29 Javascript
[39:53]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.19
2020/11/19 DOTA
Python排序搜索基本算法之堆排序实例详解
2017/12/08 Python
朴素贝叶斯Python实例及解析
2018/11/19 Python
Python中使用pypdf2合并、分割、加密pdf文件的代码详解
2019/05/21 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
python Dijkstra算法实现最短路径问题的方法
2019/09/19 Python
Python3 实现减少可调用对象的参数个数
2019/12/20 Python
python实现猜单词游戏
2020/05/22 Python
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
世界各地的旅游、观光和活动:Isango!
2019/10/29 全球购物
农村婚礼证婚词
2014/01/08 职场文书
课程改革实施方案
2014/03/16 职场文书
关于学习的演讲稿
2014/05/10 职场文书
作风转变年心得体会
2014/10/22 职场文书
个性发展自我评价2015
2015/03/09 职场文书
英语通知范文
2015/04/22 职场文书
2016年全国爱牙日宣传活动总结
2016/04/05 职场文书
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python
Moment的feature导致线上bug解决分析
2022/09/23 Javascript