文档章节

用js克隆节点

 会飞的咸鱼
发布于 2016/12/11 10:51
字数 85
阅读 4
收藏 0

//节点克隆
        function clon(obj){
            var o;
            switch (typeof obj){
                case "undefined":
                    break;
                case "string":
                    o = obj + '';
                    break;
                case "number":
                    o = obj - 0;
                    break;
                case "boolean":
                    o = obj;
                    break;
                case "object":
                    if(obj === null){
                        o = null
                    }else{
                        if(obj instanceof Array){  //判断是不是数组
                            for(var i = 0;i < obj.length;i++){
                                o.push(clon(obj[i]));
                            }
                        }else{
                            for(var k in obj){
                                o[k] = clon(obj[k]);
                            }
                        }
                    }
                    break;
                default:
                    o = obj;
                    break;
            }
            return o;
        }

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 31
码字总数 6396
作品 0
海淀
程序员
JavaScript 用 cloneNode 方法克隆节点

很多时候我们需要通过HTML DOM 的方式,用JavaScript 动态生成很多相同的节点,包括其子节点。 很多时候我们会用for 来生成多个结构相同的节点结构,这样我们需要写很多createElement、setAt...

Junn
2012/10/02
0
0
js笔记十七之DOM操作-增删改

DOM的赠删改 增 真是项目中, 我们会在js中动态创建一些html标签, 然后把其增加到页面中 document.createElement 在js中动态创建一个html标签 appendChild 容器.appendChild(新元素) 把当前创...

uplyw
05/11
0
0
JS中的prototype的一些理解

JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是...

Doublec
2015/05/14
0
0
【zepto学习笔记02】零碎点

前言 上次我们看了zepto的选择器方面的东西,其实zepto简单很大程度是因为他用了最新的检索器querySelectorAll, 今天我们来学习下zepto的一些零碎点的地方吧,主要根据zepto官方文档顺序来 ...

panpanhtai
2014/07/09
0
0
Redux + Immutable.js 性能优化

(阅读本文约需 2 分钟) 引言 众所周知,在使用 Redux 时最麻烦的一个部分就是 reducer 的编写,由于 Redux 要求状态是 immutable 的,也就是说,发生变化的状态树一定是一个新的引用。 所以...

Cyandev
05/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

c语言之内存分配笔记

先看一个数组: short array[5] = {1,2} // 这儿定义的一个int类型的数组,数组第1和第2个元素值是1和2.其余后面默认会给值为0; 或者 short array[] = {1,2};//这儿数组第1和第2个元素,数组...

DannyCoder
34分钟前
0
0
Shell | linux安装包不用选择Y/N的方法

apt-get install -y packageOR echo "y" | sudo apt-get install package

云迹
今天
1
0
Hadoop的大数据生态圈

基于Hadoop的大数据的产品圈 大数据产品的一句话概括 Apache Hadoop: 是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架...

zimingforever
今天
4
0
八大包装类型的equals方法

先看其中一个源码 结论:八大包装类型的equals方法都是先判断类型是否相同,不相同则是false,相同则判断值是否相等 注意:包装类型不能直接用==来等值比较,否则编译报错,但是数值的基本类型...

xuklc
今天
2
0
NoSQL , Memcached介绍

什么是NoSQL 非关系型数据库就是NoSQL,关系型数据库代表MySQL 对于关系型数据库来说,是需要把数据存储到库、表、行、字段里,查询的时候根据条件一行一行地去匹配,当量非常大的时候就很耗...

TaoXu
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部