Javascript中克隆一个数组的实现代码


Posted in Javascript onDecember 06, 2013

08年一家公司JS面试题,职位是javascript工程师(赴google)

面试官问我如何克隆一个数组,当时想了下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);
Javascript 相关文章推荐
js用typeof方法判断undefined类型
Jul 15 Javascript
Linux下使用jq友好的打印JSON技巧分享
Nov 18 Javascript
jquery+json实现数据二级联动的方法
Nov 28 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
Feb 06 Javascript
JS 通过系统时间限定动态添加 select option的实例代码
Jun 09 Javascript
利用vue写todolist单页应用
Dec 15 Javascript
如何快速上手Vuex
Feb 14 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
JS实现的获取银行卡号归属地及银行卡类型操作示例
Jan 08 Javascript
微信小程序实现类似微信点击语音播放效果
Mar 30 Javascript
VUE页面中通过双击实现复制表格中内容的示例代码
Jun 11 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
Feb 26 Vue.js
浅析JavaScript中的同名标识符优先级
Dec 06 #Javascript
如何判断元素是否为HTMLElement元素
Dec 06 #Javascript
随鼠标上下滚动的jquery代码
Dec 05 #Javascript
js简单实现删除记录时的提示效果
Dec 05 #Javascript
Jquery 切换不同图片示例代码
Dec 05 #Javascript
jquery 快速回到页首的方法
Dec 05 #Javascript
JS验证邮箱格式是否正确的代码
Dec 05 #Javascript
You might like
第五节 克隆 [5]
2006/10/09 PHP
基于Zend的Config机制的应用分析
2013/05/02 PHP
PHP curl实现抓取302跳转后页面的示例
2014/07/04 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
php实现将HTML页面转换成word并且保存的方法
2016/10/14 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
PHP内置函数生成随机数实例
2019/01/18 PHP
网站页面自动跳转实现方法PHP、JSP(上)
2010/08/01 Javascript
jQuery弹出(alert)select选择的值
2013/04/21 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
JS弹出新窗口被拦截的解决方法
2016/08/09 Javascript
使用JQuery选择HTML遍历函数的方法
2016/09/17 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
Base64(二进制)图片编码解析及在各种浏览器的兼容性处理
2017/02/09 Javascript
Javascript中引用类型传递的知识点小结
2017/03/06 Javascript
ES6中Array.find()和findIndex()函数的用法详解
2017/09/16 Javascript
vue-cli之router基本使用方法详解
2017/10/17 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
JS实现“全选”和"全不选"功能代码实例
2020/02/06 Javascript
基于javascript实现碰撞检测
2020/03/12 Javascript
vue实现短信验证码输入框
2020/04/17 Javascript
Vue如何提升首屏加载速度实例解析
2020/06/25 Javascript
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
JS实现选项卡插件的两种写法(jQuery和class)
2020/12/30 jQuery
Python中import机制详解
2017/11/14 Python
python复制列表时[:]和[::]之间有什么区别
2018/10/16 Python
python构建指数平滑预测模型示例
2019/11/21 Python
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
美国购买当代和现代家具网站:MODTEMPO
2018/07/20 全球购物
《理想》教学反思
2014/02/17 职场文书
经济职业学院毕业生自荐书
2014/03/17 职场文书
庐山导游词
2015/02/03 职场文书
教师党员自我评价2015
2015/03/04 职场文书
MySQL系列之六 用户与授权
2021/07/02 MySQL
MySQL数据库10秒内插入百万条数据的实现
2021/11/01 MySQL