如果想要把某个对象拷贝(合并)给另外一个对象使用,此时可以使用$.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>