`
xiangqian0505
  • 浏览: 321096 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

js 克隆 Clone

阅读更多
Object.prototype.Clone=function()
{
    var objClone=new this.constructor(); //这里是创建一个与被Clone对象相同结构的对象
    for(var key in this)
    {
        if(objClone[key]!=this[key])
        {
             if(typeof(this[key])=='object')
             {
                 objClone[key]=this[key].Clone();
             }
             else
             {
                 objClone[key]=this[key];
             }
        }
    }
    if(!objClone || (''+objClone)=='')
    {
        return (new String(this)+objClone)?this:objClone;
    }
    else
    {
        objClone.toString=this.toString;
        return objClone;
    }
}

//数组克隆

Array.prototype.clone = function() {
    var c = [];
    var old = this;
    for (var i=0; i<old.length; i++) {
        var o = old[i];
        c[i] = o.clone ? o.clone() : o;   //o.clone存在 说明是数组 但是也不一定 我觉得这个有点问题
    }
    return c;
}

 

分享到:
评论

相关推荐

    htmljs克隆标签

    克隆HTML标签主要有两种方法:深克隆(deep clone)和浅克隆(shallow clone)。深克隆会复制元素及其所有子元素和属性,包括事件监听器;而浅克隆只会复制元素本身,不包含子元素和属性。 在JavaScript中,我们...

    ThreeJS选中gltf进行单体化时,使用选中的mesh进行克隆,模型飞掉的问题.txt

    ThreeJS选中gltf进行单体化时,使用选中的mesh进行克隆,模型飞掉的问题.txt

    threes-js-clone:Threes 的 Javascript 克隆

    《Threes-js-Clone:JavaScript实现的Threes游戏克隆》 Threes!是一款备受欢迎的数字合并益智游戏,其简洁的设计和富有挑战性的玩法吸引了众多玩家。在这个项目中,我们将探讨一个名为"threes-js-clone"的...

    alibaba.com new PHP clone 英文版阿里巴巴克隆 PHP完整版源码

    `scripts.js`是JavaScript文件,可能包含了网站的前端交互逻辑,比如表单验证、动态加载内容和页面间的跳转。JavaScript与PHP结合,可以实现丰富的用户交互,提供更流畅的浏览体验。 `Alibaba2.htm`和`Alibaba.htm`...

    js 实现 克隆表格

    js 实现 克隆表格! 值得下载看看!资源免费,大家分享!!

    Javascript对象Clone实例分析

    在讨论JavaScript对象克隆的实现与技巧时,我们首先需要了解对象克隆的概念和它在编程中的应用。对象克隆指的是创建一个具有与原始对象相同属性和值的新对象,但两个对象是独立的,即对新对象的任何修改都不会影响...

    clone:专业的深克隆库

    ├── demo├── dist # production code├── doc # document├── src # source code├── test # unit test├── CHANGELOG.md└── TODO.md用法npm安装$ npm install --save @jsmini/clone Node.js var ...

    js-object-clone:深度克隆并与ES5属性描述符和对象可扩展性支持进行比较

    对象克隆ES5的深克隆和比较概要// just for conveniencevar log = function ( ) { console . log . apply ( console , [ ] . slice . call ( arguments ) ) } ; var src = { name : 'dankogai' , lang : [ 'perl' ] ...

    2048-clone-js:2048 的 JavaScript 克隆

    "2048-clone-js"项目就是一个基于JavaScript语言的2048游戏克隆版,由黛比·米尔本和卢西安·卡恩两位开发者共同完成。这个游戏的实现不仅展示了JavaScript的基础语法和面向对象编程思想,还涉及到DOM操作、事件监听...

    ldx-clone:惰性深克隆,高性能的js克隆

    惰性深克隆,高性能的js克隆 传统的深拷贝做法 JSON.parse(JSON.stringify(data)) 递归浅拷贝 第一种做法存在一些局限,很多情况下并不能使用,因此这里就不提了;第二种做法一般是工具库中的深拷贝函数实现方式,...

    关于jquery克隆,给元素赋值详解

    在JavaScript中,我们可以使用`clone()`方法来克隆DOM元素。jQuery提供了方便的API,使得克隆操作更加简单。例如,如果我们有一个DOM元素`$("#myElement")`,我们可以使用`clone()`方法创建它的副本: ```...

    jira_clone:使用Vuejs和NodejsGraphql构建的Jira克隆

    使用Vuejs和Nodejs / Graphql构建的Jira克隆入门 :rocket: git clone https://github.com/Datlyfe/jira_clone.git 如果尚未安装 ,请安装它并创建数据库(如果您更喜欢使用docker,也可以使用docker compose文件,只...

    jewel-clone:Bejeweled 克隆使用three.js 和cordova

    本篇文章将深入探讨如何利用JavaScript库three.js和移动开发框架Apache Cordova,创建一款名为“jewel-clone”的Bejeweled风格游戏。通过对项目源代码的分析,我们可以学习到游戏开发中的关键技术和策略。 首先,...

    完美解决双向绑定问题的,clone.js方便实用

    用来解决双向绑定问题,相当于克隆出一份单独的数据,实用简单

    pop-clone:用于克隆 JavaScript 对象图的多态运算符

    这个 JavaScript 包导出一个深度克隆运算符,它接受可能包含引用循环的任意对象图。 clone 操作符委托给实现它的任何对象的 clone 方法。 $ npm install --save pop-clone clone 方法接受一个值或对象图,并返回一...

    gmail-clone:使用Angular创建Gmail克隆

    用javascript编写Gmail克隆。 指示 导航到要将此克隆下载到的文件夹,然后执行以下操作: $ git clone https://github.com/ashleigh090990/gmail-clone $ cd gmail-clone 要在gmail克隆中浏览页面,请运行Selenium...

    前端开源库-better-clone

    5. **兼容性**: `better-clone` 针对不同的 JavaScript 环境进行了优化,包括浏览器环境和 Node.js 环境,使得它在各种平台上都能稳定工作。 6. **API 简洁易用**: `better-clone` 提供了一个简单的 API,即 `...

    flow-clone-源码.rar

    "flow-clone"可能是一个用于数据流复制或者对象克隆的库,它在处理复杂数据结构时,尤其是在处理JavaScript中的引用类型时,可能有着独特的优化策略。 首先,我们需要了解"flow"通常在编程中指的是数据的流动方向或...

    CR-Clone:Unity 3D 中的自定义机器人克隆

    本项目“CR-Clone”专注于在Unity环境中实现自定义机器人的克隆,利用JavaScript(Unity中的Legacy JavaScript,也称为JS或UnityScript)作为主要编程语言。 一、Unity 3D与JavaScript基础 Unity 3D是一个跨平台的...

    proxy-clone:基于ES6代理的深度克隆

    根据对象大小的不同, proxy-clone可能比朴素的JSON克隆或npm的模块要快得多。 要注意的最重要的事情是克隆速度是恒定的,但是使用克隆的对象会稍微慢一些。 JSON small x 60,036 ops/sec ±1.09% (92 runs sampled...

Global site tag (gtag.js) - Google Analytics