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 相关文章推荐
JAVASCRIPT  THIS详解 面向对象
Mar 25 Javascript
jquery last-child 列表最后一项的样式
Jan 22 Javascript
利用ajaxfileupload插件实现文件上传无刷新的具体方法
Jun 08 Javascript
基于jquery实现的省市区级联无ajax
Sep 24 Javascript
JQuery做的一个简单的点灯游戏分享
Jul 16 Javascript
jQuery菜单插件superfish使用指南
Apr 21 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
json传值以及ajax接收详解
May 24 Javascript
Vue动态实现评分效果
May 24 Javascript
vue-router路由参数刷新消失的问题解决方法
Jun 17 Javascript
layui给下拉框、按钮状态、时间赋初始值的方法
Sep 10 Javascript
Vue检测屏幕变化来改变不同的charts样式实例
Oct 26 Javascript
浅析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
smtp邮件发送一例
2006/10/09 PHP
用PHP读取和编写XML DOM的实现代码
2011/02/03 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
php gethostbyname获取域名ip地址函数详解
2010/01/24 Javascript
c#和Javascript操作同一json对象的实现代码
2012/01/17 Javascript
JavaScript的21条基本知识点
2014/03/04 Javascript
自定义jquery模态窗口插件无法在顶层窗口显示问题
2014/05/29 Javascript
Javascript中封装window.open解决不兼容问题
2014/09/28 Javascript
javascript用正则表达式过滤空格的实现代码
2016/06/14 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
Vue 中的compile操作方法
2018/02/26 Javascript
vue集成kindeditor富文本的实现示例代码
2019/06/07 Javascript
js实现一个简易计算器
2020/03/30 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
python 多线程应用介绍
2012/12/19 Python
python调用shell的方法
2013/11/20 Python
Python中文件的读取和写入操作
2018/04/27 Python
Python设计模式之简单工厂模式实例详解
2019/01/22 Python
Python+Pyqt实现简单GUI电子时钟
2021/02/22 Python
Python Web框架之Django框架Model基础详解
2019/08/16 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
Python学习工具jupyter notebook安装及用法解析
2020/10/23 Python
python实现登录与注册系统
2020/11/30 Python
纽约通行卡:The New York Pass(免费游览纽约90多个景点)
2017/07/29 全球购物
Web Service面试题:如何搭建Axis2的开发环境
2012/06/20 面试题
师范应届毕业生自荐信
2013/11/18 职场文书
水电工岗位职责
2014/02/12 职场文书
物理教育专业求职信
2014/06/25 职场文书
工商管理本科生求职信
2014/07/13 职场文书
青年志愿者活动方案
2014/08/17 职场文书
文艺演出主持词
2015/07/01 职场文书
2016年学校综治宣传月活动总结
2016/03/16 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
nginx location 带斜杠【 / 】与不带的区别
2022/04/13 Servers