javascript中的数组应用的一点发现

2016-02-19 19:36 0 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的javascript中的数组应用的一点发现懂设计的网友们快点来了解吧!

【 tulaoshi.com - Web开发 】

    今天用javascript写一个小程序,用到数组时有一个小小发现,翻了手边的书都没有介绍,所以就发过来献丑了。

    首先我们先定义一个数组,并给它赋值,然后再定义一个空的数组,另空数组=原数组:

    /*****************代码段一*****************

    var array1 = new Array("a", "b", "c");

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

    var array2 = new Array();

    Array2 = Array1;

    /******************************************

    我当时的目的是想用新数组暂时存放原数组的数据,因为我可能改变这些数据这些数据,但是又不想改变原数组,所以我用一个新的临时数组来存放这些数据。但是运行的结果却是我操作了新数组,原数的值也改变了。

    /*****************代码段二*****************

    array2.pop();

    array2.push("d");

    var tempStr = "";

    for (var i=0; i=array1.length; i++)

        tempStr += array1[i];

    alert(tempStr);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

    /******************************************

    这让我想起了C/C++里面引用或者指针,可是我翻遍了手边的各种javascript手册或者教程都没有提到这一概念,但这里新数组确实是原数组的一个引用。而用其他方法来初始化这个新数组就不会出现这样的情况:

    /****************代码段三******************

    var array1 = new Array("a", "b", "c");

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

    var array2 = new Array(array1);

    /******************************************

    一些思考:win下javascript的数组对象应该是vc++写的class,而作者没有重载"=",所以使javascript的数组直接用"="赋值成为了对源数组的引用。

来源:https://www.tulaoshi.com/n/20160219/1621421.html

延伸阅读
标签: Java JAVA基础
数组是JavaScript提供的一个内部对象,它是一个标准的集合,我们可以添加(push)、删除(shift)里面元素,我们还可以通过for循环遍历里面的元素,那么除了数组我们在JavaScript里还可以有别的集合吗? 由于JavaScript的语言特性,我们可以向通用对象动态添加和删除属性。所以Object也可以看成是JS的一种特殊的集合。下面比较一下Array和Object的...
《闪点行动3:红河》另一发现,队友的用处 不得不说队友的AI了,开枪打不到敌人 玩家躺了不晓得上来救人  而且有时候需要坐车的 那3个牲口居然就站在那不动。 我发现其实队友还是有另一个好处的 就是提供枪械(嘿嘿~) 需要火力压制的时候 就把那个拿机枪的队友干掉 然后换机枪 需要打远程的敌人 就把狙击手宰了换枪 反正那3个牲口队友一...
标签: Web开发
var arr=['a','b','c']; 若要删除其中的'b',有两种方法: 1.delete方法:delete arr[1] 这种方式数组长度不变,此时arr[1]变为undefined了,但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用 for(index in arr) document.write('arr['+index+']='...
标签: Web开发
上次写的一篇《JavaScript 数组的 uniq 方法》,发现代码的问题还是存在。比如如果数组内有 undefined 元素就无法过滤等。 昨天看见 Lazy 兄弟重新更新了函数,现在他是这样子写的: Array.prototype.uniq = function() {     var resultArr = [], ...
研究人员进一步发现,限制热量摄入激活了实验鼠大脑内的环腺苷酸反应成分结合蛋白1,后者进而能激活其他一系列与长寿相关的分子。而清除该物质后,实验鼠即便限制热量摄入,也会与过度进食者或老年者一样出现大脑功能衰退。 研究发现少吃一点有助于头脑清醒 研究发现少吃一点有助于头脑清醒 少吃一点有助于头脑清醒,这可...

经验教程

853

收藏

54
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部