首页 > 其他分享 >jquery 拷贝对象

jquery 拷贝对象

时间:2023-05-30 16:33:53浏览次数:31  
标签:jquery obj 对象 var targetObj msg 拷贝 id


如果想要把某个对象拷贝(合并)给另外一个对象使用,此时可以使用$.extend ()方法

语法∶

$.extend ( [deep], target, object1,[object])

1.deep:如果设为true为深拷贝,默认为false浅拷贝
2.target:要拷贝的目标对象
3.object1:待拷贝到第一个对象的对象。
案例:

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Title</title>
		<script src="js/jquery-3.5.1.min.js"></script>
		<script>
            $(function () {
                // var targetObj = {};
                // var obj = {
                //     id: 1,
                //     name: 'andy'
                // }
                // $.extend(targetObj, obj);
                // console.log(targetObj);

                /*var targetObj = {id: 0};
                var obj = {
                    id: 1,
                    name: 'andy'
                }
                $.extend(targetObj, obj);   //覆盖原来的内容
                console.log(targetObj);*/

                var targetObj = {age: 18, id: 0};
                var obj = {
                    id: 1,
                    name: 'andy',
                    msg: {id: 0}
                }
                $.extend(targetObj, obj);   //浅拷贝,合并,相同属性覆盖,msg拷贝的只是地址
                console.log(targetObj);
                obj.msg.id=90;
                console.log(targetObj.msg.id)   //结果是90

                var targetObj = {age: 18, id: 0, msg:{id: -1}};
                var obj = {
                    id: 1,
                    name: 'andy',
                    msg: {id: 0}
                }
                $.extend(true,targetObj, obj);   //深拷贝,合并,相同属性覆盖,msg拷贝的是完整对象,里面的msg.id被覆盖
                console.log(targetObj);
                obj.msg.id=90;
                console.log(targetObj.msg.id)   //结果是0 :-1被0覆盖,修改obj的msg.id, targetObj不受影响
            })
		</script>
	</head>
	<body>

	</body>
</html>


标签:jquery,obj,对象,var,targetObj,msg,拷贝,id
From: https://blog.51cto.com/u_16144724/6380369

相关文章

  • jquery自动触发事件
    <!DOCTYPEhtml><htmllang="en"> <head> <metacharset="UTF-8"> <title>Title</title> <scriptsrc="js/jquery-3.5.1.min.js"></script> <script>$(function......
  • jQuery 事件解绑
    事件.off([事件名][,[子元素名]])一次性事件:事件.one(),//用法同on<!DOCTYPEhtml><htmllang="en"> <head> <metacharset="UTF-8"> <title>Title</title> <scriptsrc="js/jquery-3.5.1.min.js"></sc......
  • jquery 创建,追加,删除节点
    <!DOCTYPEhtml><htmllang="en"> <head> <metacharset="UTF-8"> <title>Title</title> <scriptsrc="js/jquery-3.5.1.min.js"></script> </head> <body> <ul&g......
  • jquery 全选,反选复选框
    <!DOCTYPEhtml><htmllang="zh-CN"> <head> <metacharset="UTF-8"> <title>我的购物车-品优购</title> <linkrel="stylesheet"href="css/base.css"> <linkrel="styleshee......
  • 对象.hasOwnProperty()的应用
     ......
  • 一文详解 Sa-Token 中的 SaSession 对象
    Sa-Token是一个轻量级java权限认证框架,主要解决登录认证、权限认证、单点登录、OAuth2、微服务网关鉴权等一系列权限相关问题。Gitee开源地址:https://gitee.com/dromara/sa-token本文将详细介绍Sa-Token中的不同SaSession对象的区别,以及各种方便的存取值的方法。一......
  • 第十一单元 面向对象三:继承与多态
    假设老师类设计如下:class老师类{属性:姓名,性别,生日,工资行为:吃饭,跑步,教学}学生类设计如下:class老师类{属性:姓名,性别,生日,班级行为:吃饭,跑步,学习}我们秉承着,让最简洁的代码,实现最最强大的功能原则,能否让上述案例中的重复代码进行优化呢?我们能......
  • 第十单元 面向对象二:静态类与静态成员
    前言我们天天都在使用Console.WriteLine("Helloworld");​Console.ReadLine("");​Arrays.Sort()为什么Console类调用方法不需要实例化而可以直接调用呢?我们可以查看Console的源码发现Console类定义如下:publicstaticclassConsole{//...}......
  • 第九单元 面向对象一:类与对象
    假设,班级里40位同学,我们用程序保存40位学生的信息:学号,姓名,性别,生日,身份证号。如果是你,你会怎么实现?小菜同学拿到这个题,奋书疾笔,马上写出如下代码:ArrayListlist=newArrayList();​stringstuNo1="10001";stringname1="张三";stringsex="男";Datetimebirthday1=D......
  • 面相对象设计模式目录
    写了个具体模式代码实现示例(c#):https://gitee.com/idasheng/DesignPattenDemo更新于:2023.5.30......