JS基础回顾,小练习(克隆对象,数组)
2016-03-14 19:04
405 查看
对象的克隆:
数组的克隆:
方法1:
方法2:
方法3:
方法4:
var srcObj = { a: 1, b: { b1: ["hello", "hi"], b2: "JavaScript" } }; function cloneObject(src) { var target = {}; for(var k in src){ target[k] = src[k]; } return target; } var o = cloneObject(srcObj); console.log(o===srcObj); //false
数组的克隆:
方法1:
var srcArr = ['html','css','javascript','Jquery','ajax','less']; function cloneArr(src) { var target = []; for(var i=0;i<src.length;i++){ target[i] = src[i]; } return target; } var arr = cloneArr(srcArr); console.log(arr); console.log(arr===srcArr); //false
方法2:
var srcArr = ['html','css','javascript','Jquery','ajax','less']; function cloneArr(src) { return srcArr.join().split(","); } var arr = cloneArr(srcArr); console.log(arr); console.log(arr===srcArr); //false
方法3:
var srcArr = ['html','css','javascript','Jquery','ajax','less']; function cloneArr(src) { var arr = []; for(var k in src){ arr[k] = src[k]; } return arr; } var arr = cloneArr(srcArr); console.log(arr); console.log(arr===srcArr); //false
方法4:
var srcArr = ['html','css','javascript','Jquery','ajax','less']; function cloneArr(src) { var len = src.length,arr=[]; var str = src.toString(); var reg = /([\d\w]+),/g; var i = 0,m; while(m = reg.exec(str)){ arr[i] = m[1]; i++; } return arr; } var arr = cloneArr(srcArr); console.log(arr); console.log(arr===srcArr); //false
相关文章推荐
- JSP中遇到的小问题
- Network 【用 AFN 通过 POST 方式发送JSON数据的两种形式】
- js判断浏览器类型
- js日期时间计算天数
- js 函数function用法
- json处理四部曲之第三曲:利用Gson处理json
- json处理第二篇:利用Gson处理json
- js高级程序设计(六)面向对象
- Js中的对象、构造函数、原型、原型链及继承
- avascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。
- js跨域访问
- json处理四部曲之第二曲:利用Jackson处理json
- json处理第一篇:利用Jackson处理json
- ajax 解析 json 响应出错问题
- JS基础回顾,小练习(判断数组,以及函数)
- 通过寄生组合式继承创建js的异常类
- javaScript字体变大
- Javascript学习笔记:3种检测变量类型的方法
- layer,一个可以让你想到即可做到的javascript弹窗(层)解决方案
- js加载一个地方出错造成后续没有编译