怎样实现一个函数clone,对JavaScript中的五种主要的数据类型进行值复制
来源:互联网 发布:mac能用latex吗 编辑:程序博客网 时间:2024/05/29 04:49
实现一个函数对JavaScript中的五个主要数据类型进行值赋值是前端面试中JavaScript经典的考点。
JavaScript中常见的五种数据类型是Number、String、Array、Boolean、Object,这同样是一个考点,通常考察的方式是:
JavaScript的typeof返回哪些数据类型?
答案:Number String Array Boolean Object
那么下面我们来实现以下这个函数
function clone( obj ) { var copy; switch( typeof obj ) { case "undefined": break; case "number": copy = obj - 0; break; case "string": copy = obj + ""; break; case "boolean": copy = obj; break; case "object": //object分为两种情况 对象(Object)和数组(Array) if(obj === null) { copy = null; } else { if( object.prototype.toString.call(obj).slice(8, -1) === "Array") { copy = []; for( var i = 0 ; i < obj.length ; i++ ) { copy.push(clone(obj[i])); } } else { copy = {}; for( var j in obj) { copy[j] = clone(obj[j]); } } } break; default: copy = obj; break; } return copy;}
关于object.prototype.toString.call().slice()在我的另一篇文章中会有讲解
阅读全文
1 0
- 怎样实现一个函数clone,对JavaScript中的五种主要的数据类型进行值复制
- 实现一个clone函数并可以对js中的5种主要数据类型进行值复制
- 实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。
- 实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。
- 面试题---实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。
- 【前端js】实现一个函数可以对JavaScript中的5种主要数据类型进行赋值
- javascript,对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制
- 实现JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制
- 封装一个clone函数(对不同的类型进行值复制)
- JS实现clone函数对五种数据类型的复制(深拷贝、浅拷贝)
- JavaScript中如何对一个对象进行深度clone
- Java中的克隆clone以及对数组的复制
- 实现一个clone函数
- 写一个方法clone; 实现js五种数据类型(string, number, boolean, array, object)的复制
- JavaScript深度复制(deep clone)的实现方法
- JavaScript中的对象复制(Object Clone)
- 怎样对.net中的javascript脚本进行调试?
- 几个很有用的javascript函数的具体实现(主要是对表单的验证)
- 解决IE9下JQuery的ajax失效的问题
- 时间戳在数据库存储的类型
- 留学的意义4
- 调研tcp定时器
- X.25分组交换网
- 怎样实现一个函数clone,对JavaScript中的五种主要的数据类型进行值复制
- 数据库 事物
- mysql 的自增长的策略(查询与更改初值)
- AOP第二部分应用-事务管理
- Linux 常用命令汇总
- 字符串替换(不输出某个字符的方法)
- 数据库 视图
- 深入探讨:如何实现排列组合
- 留学的意义5