文档章节

JavaScript Array.push()方法与浅复制

v
 vincedd
发布于 2017/05/02 13:35
字数 168
阅读 14
收藏 0

今天码代码的过程中遇到一个问题,在此记录一下,简单地说,当使用Array.push()方法向数组内添加一个引用类型的变量时,只是一个浅拷贝操作,当对变量进行操作后,数组内的变量值也会随之发生变化,测试代码如下:

let    a = [],
        b = [1, 2, 3];

    a.push([34]);
    a.push([3, 4]);
    a.push(b);

    console.log(b[0]);//1
    console.log(a[2][0]);//1
    b[0] = "test";
    console.log(b[0]);//test
    console.log(a[2][0]);test

查阅相关资料后得知,如果希望将一个引用类型变量深复制进一个数组,可使用js的slice和concat方法,

© 著作权归作者所有

共有 人打赏支持
v
粉丝 0
博文 1
码字总数 168
作品 0
杭州
私信 提问
深入JavaScript基础之深浅拷贝

最近在学到JavaScript对象的深拷贝和浅拷贝做了一些比较,将实际开发的点和基础点做了些小结,话不多说,开始进入主题吧。 基础认识---基本类型 基础认识---引用类型 浅拷贝的实现-对象&&数组...

楚梦浮生
07/30
0
0
JavaScript基础-基本数据类型和基本流程控制

JavaScript基础1 一、基本数据类型 1.Number 2.String 3.Null 4.Undefined 5.true or false 二、字符串常用方法 1.解析字符串数字 parseInt:解析成整数 parseFloat:解析成小数 2.文本常见操...

pei_river
09/06
0
0
JavaScript中浅拷贝和深拷贝的区别和实现

要理解 JavaScript中浅拷贝和深拷贝的区别,首先要明白JavaScript的数据类型 JavaScript有两种数据类型,基础数据类型和引用数据类型 基础数据类型:保存在栈内存中的简单数据段 ,有undefin...

tianyawhl
09/25
0
0
Javascript: Array.prototype.push()的源码及一些思考

JS的函数有一个特别重要的属性:,它经常被用到,比如说,我们来实现一个方法,可以这么写: 然后我们有时候要对进行处理,但是只是一个类数组,只有属性,没有什么, ……这时候我们经常会用...

Lxylona
05/15
0
0
为什么 react要使用immutable.js

原文来自:https://zhuanlan.zhihu.com/p/29983598 首先有一个非常巨大的对象… 这里有100,000条待办事项: 我要把第50,005条任务的completed改为ture。 用普通的JavaScript对象 这项操作运行...

神秘者007
08/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

微服务分布式事务实现

https://www.processon.com/view/link/5b2144d7e4b001a14d3d2d30

WALK_MAN
今天
2
0
《大漠烟尘》读书笔记及读后感文章3700字

《大漠烟尘》读书笔记及读后感文章3700字: 在这个浮躁的社会里,你有多久没有好好读完一本书了? 我们总觉得自己和别人不一样,所以当看到别人身上的问题时,很少有“反求诸己”,反思自己。...

原创小博客
今天
4
0
大数据教程(9.5)用MR实现sql中的jion逻辑

上一篇博客讲解了使用jar -jar的方式来运行提交MR程序,以及通过修改YarnRunner的源码来实现MR的windows开发环境提交到集群的方式。本篇博主将分享sql中常见的join操作。 一、需求 订单数据表...

em_aaron
今天
3
0
十万个为什么之什么是resultful规范

起源 越来越多的人开始意识到,网站即软件,而且是一种新型的软件。这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点...

尾生
今天
3
0
Terraform配置文件(Terraform configuration)

Terraform配置文件 翻译自Terraform Configuration Terraform用文本文件来描述设备、设置变量。这些文件被称为Terraform配置文件,以.tf结尾。这一部分将讲述Terraform配置文件的加载与格式。...

buddie
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部