js数组引用
总结归纳:
1、普通的赋值是复制栈区内容。
2、基本类型的数据在栈区存放数据自身,var a=b; //a与b无关。
引用类型数据在栈区存放数据地址。 var a=b; //a,b联动
3、基本数据类型包括:undefined,boolean,number,string,null
引用类型:对象、数组、函数
用jq的$.extend方法(多维数组)
<script type="text/javascript">
var a=[];
var b;
b= $.extend(true,{},a)
//var zNodesNew = $.extend(true,[],zNodesTmp);
b[]++;
alert(b[]);
</script>
用数组的concat方法
<script type="text/javascript">
var a=[];
var b=a.concat();
b[]++;
alert(a[]);
</script>
for循环数组,挨个赋值
var a=[,,];
var b=[];
for(var i=; i<a.length; i++){
b[i]=a[i];
}
数组的slice()方法
arrayObject.slice(start,end)
返回一个新数组,包含从start到end(不包含此元素)的arrayObject中元素。该方法不修改原数组,而是返回一个新数组。
var arr =["a","b","c","d","e"];
var arr1=arr.slice(,);
console.log(arr1); //"c,d" var arr2=arr.slice();
console.log(arr2); //"a,b,c,d,e" arr2[]="wang"
console.log(arr); //"a,b,c,d,e" 与原数组不联动
console.log(arr2); //"a,b,wang,d,e"
参考地址:
https://blog.csdn.net/u010267996/article/details/61191975
https://www.cnblogs.com/matthew-2013/p/3524297.html
https://www.cnblogs.com/yuyifan/p/6204365.html
js数组引用的更多相关文章
- js 数组引用 发现的问题
最近做项目时,要对返回的数据[保存在json数组中]做一次修改,但原数据要保留一次做备用.首先想到,原数据不动,用一个临时的变量来修改,大致模型就是这样: // 原始: a=[1,2,3,4,5,.. ...
- js 数组赋值问题 :值传递还是引用?
转载于知乎var a = [1,2,3]; var b = a; a = [4,5,6]; alert(b); //[1,2,3] 面试时被问到这样一个问题,竟然从来没试过... 当时直接的理解,数组 ...
- js数组操作大全
原文(http://www.cnblogs.com/webhotel/archive/2010/12/21/1912732.html) 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简 ...
- js数组操作
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...
- js数组操作【转载】
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多,自以为js高手的自己居然无从下手,一下狠心,我学!呵 ...
- JS 数组去重(数组元素是对象的情况)
js数组去重有经典的 几种方法 但当数组元素是对象时,就不能简单地比较了,需要以某种方式遍历各值再判断是否已出现. 因为: 1.如果是哈希判断法,对象作哈希表的下标,就会自动转换成字符型类型,从而导致 ...
- js数组的声明与应用
js数组的声明与应用 数组:一种容器,存储批量数据.JavaScript是一种弱类型语言.什么是弱类型,就是变量可以存储多种类型变量的引用不会报错.所以js数组可以存储不同的数据. 一.数组的作用:只 ...
- js数组的操作 【转】
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...
- js数组的操作及数组与字符串的相互转化
数组与字符串的相互转化 <script type="text/javascript">var obj="new1abcdefg".replace(/ ...
随机推荐
- MYSQL进阶学习笔记十一:MySQL 表的分析,检查和优化!(视频序号:进阶_28)
知识点十二:MySQL 表的分析,检查和优化(28) 表的分析,检查和优化: 定期分析表: ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, ...
- [Selenium] Actions.doubleClick
WebElement el = page.getTable_AssetMixesName().get(index); Actions action = new Actions(driver); act ...
- [Selenium] Selenium私房菜(新手入门教程)
http://wenku.baidu.com/link?url=JrHF9o0mKWcpEsE-wijcZaneBWgpmAJPRwGyWXd7RvqzJCLLrsrsv5lf9bPRmgKUa_v- ...
- 聊聊Spring中的工厂
BeanFactory是Spring IOC容器的根接口,定义了Bean工厂的最基础的功能特性,比如根据name获取指定bean等,根据不同用途它的子接口又对它的功能进行细化,比如是否是可列表的,是否 ...
- (链接)Tomcat设置Session的失效方式
tomcat 设置session过期时间(四种方式):https://blog.csdn.net/liuxiao723846/article/details/50055075 tomcat里设置ses ...
- 简单聊聊ES6-Promise和Async
前言 本篇博文出至于我的github仓库:web-study,如果你觉得对你有帮助欢迎star,你们的点赞是我持续更新的动力,谢谢! 异步编程在前端开发中尤为常见,从最早的XHR,到后来的各种封装aj ...
- FZU2277 Change(dfs序+树状数组)
传送门 题意 q次操作,操作有两种: 1 v x k:a[v]+=x,a[v']+=x-k(v'是v的子节点)... 2 v:查询\(a[v]mod(10^9+7)\) 分析 子节点增加的值为\(x+ ...
- PTA 模拟,【放着一定要写哈哈哈哈哈】(据说用string哟)
实现一种简单原始的文件相似度计算,即以两文件的公共词汇占总词汇的比例来定义相似度.为简化问题,这里不考虑中文(因为分词太难了),只考虑长度不小于3.且不超过10的英文单词,长度超过10的只考虑前10个 ...
- bzoj 3109: [cqoi2013]新数独【dfs】
按3x3的小块dfs,填数的时候直接满足所有条件即可 #include<iostream> #include<cstdio> #include<cstring> u ...
- HTTP请求头中的那些东西
一.HTTP请求头是什么? HTTP请求头,HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头. 二.HT ...