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

javascript克隆clone

 
阅读更多

参考地址:https://www.cnblogs.com/zouhao/p/7278117.html

 

function clone(obj) {
    // Handle the 3 simple types, and null or undefined
    if (null == obj || 'object' != typeof obj) {
        return obj
    };

    // Handle Date
    if (obj instanceof Date) {
        var copy = new Date();
        copy.setTime(obj.getTime());
        return copy;
    }

    // Handle Array
    if (obj instanceof Array) {
        var copy = [];
        for (var i = 0, len = obj.length; i < len; i++) {
            copy[i] = clone(obj[i]);
        }
        return copy;
    }

    // Handle Object
    if (obj instanceof Object) {
        var copy = {};
        for (var attr in obj) {
            if (obj.hasOwnProperty(attr)){
                copy[attr] = clone(obj[attr]);
            }
        }
        return copy;
    }

    throw new Error('Unable to copy obj! Its type isn\'t supported.');
}

 

 

 

分享到:
评论

相关推荐

    javascript中clone对象详解.docx

    在JavaScript中,克隆对象是一项常见的任务,尤其是在处理复杂的数据结构时。克隆对象的目的是创建一个与原对象具有相同属性和值的新对象,但两者之间没有引用关系,即修改克隆对象不会影响原始对象。在JavaScript中...

    Javascript对象Clone实例分析

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

    javascript中clone对象详解

    JavaScript中的对象克隆是开发中常用的操作,主要目的是创建一个现有对象的副本,以便在不影响原始对象的情况下使用。在JavaScript中,克隆对象的方法主要有以下几种。 一种简单的方法是使用JSON的stringify和parse...

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

    【标题】"alibaba.com new PHP clone 英文版阿里巴巴克隆 PHP完整版源码" 涉及的核心知识点主要集中在PHP编程语言、网站克隆技术以及阿里巴巴网站的架构和功能模仿。这个项目是一个用于教学目的的开源版本,旨在帮助...

    threes-js-clone:Threes 的 Javascript 克隆

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

    htmljs克隆标签

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

    2048-clone-js:2048 的 JavaScript 克隆

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

    arcade-clone:使用JavaScript克隆街机经典游戏

    #测试链接: ://emerson-franca.github.io/arcade-clone/ #街机经典的克隆 ##游戏说明 游戏的目的是捕获最多的星星,每捕获两颗星星,敌人的速度就会增加,这使游戏更具挑战性! ##技术说明 每当我们获得一颗...

    javascript克隆对象深度介绍

    JavaScript中的对象克隆,主要是指复制一个对象,得到一个新的对象,这个新对象具有与原对象相同的属性和值。在进行对象克隆的过程中,根据复制的深度,可以分为浅度克隆和深度克隆。 浅度克隆(Shallow Clone)仅...

    apple_ui_clone:响应式网站使用HTML,SCSS和Javascript克隆Apple网站的UI

    一个响应式网站,使用HTML,SCSS和Javascript克隆Apple网站(南非)的用户界面 此项目是在Visual Studio Code上设置的,并托管在firebase上。 该项目的目的是展示我接受任何给定设计并开发相同应用程序的能力。 ...

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

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

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

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

    JavaScript中Rainbrow iOS游戏的克隆-JavaScript开发

    Rainbrow clone Nathan Gitter使用网络技术对iOS游戏Rainbrow进行了快速克隆。 使用面部表情上下移动表情符号,与星星收集点并避开敌人。 技术堆栈Rainbrow克隆Nathan Gitter使用网络技术对iOS游戏Rainbrow进行了...

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

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

    前端开源库-better-clone

    总之,`better-clone` 是前端开发中的一个重要工具,它解决了 JavaScript 原生克隆方法的局限性,提供了更强大的深拷贝功能,适用于处理复杂的数据结构。了解并熟练使用这个库,可以提升开发效率,保证代码质量。

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

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

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

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

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

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

Global site tag (gtag.js) - Google Analytics