Javascript中克隆一个数组的实现代码_javascript技巧
程序员文章站
2022-03-14 10:57:37
...
08年一家公司JS面试题,职位是javascript工程师(赴google)
var ary = [1,2,3];//源数组
var ary2 = ary.slice(0);//克隆一个新数组
console.log(ary2);
/* 改变ary2,不会影响到ary,说明的确是两个数组而非引用
* 如果是两个引用,则改变其中任何一个都是对同一个数组操作
*/
ary2[0] = 10;
console.log(ary2);
console.log(ary);
面试官问我如何克隆一个数组,当时想了下js的Object没有clone方法,java的Object有。
那怎么得到一个新数组呢?
我当时回答:用一个loop将源数组元素依次push到新数组中。这是最简单的方法,但显然不是面试官想要的答案。
最后告知我:利用Array的slice方法。示例如下:
复制代码 代码如下:
var ary = [1,2,3];//源数组
var ary2 = ary.slice(0);//克隆一个新数组
console.log(ary2);
/* 改变ary2,不会影响到ary,说明的确是两个数组而非引用
* 如果是两个引用,则改变其中任何一个都是对同一个数组操作
*/
ary2[0] = 10;
console.log(ary2);
console.log(ary);
上一篇: Java之创建窗口和程序片详解
下一篇: 在Java中使用xpath对xml解析
推荐阅读
-
web在html中引用JavaScript代码的实现(小程序在xwml中实现)
-
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
-
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
-
PHP实现Javascript中的escape及unescape函数代码分享
-
ruby、javascript、php中的观察者模式实现代码
-
在C#中调用VBScript、javascript等脚本的实现代码
-
Javascript实现数组中的元素上下移动
-
JavaScript实现获取select下拉框中第一个值的方法
-
JavaScript中的FileReader图片预览上传功能实现代码
-
在PHP中实现Javascript的escape()函数代码