老师,我这样的深克隆可以吗
来源:5-6 深克隆和浅克隆
玄鱼琉璃
2020-11-09 09:55:30
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title></title>
</style>
<script type="text/javascript">
var arr1 = [1,2,3,[44,55,66,[777,888,999]]];
function deepclone(o){
//判断是不是数组
if (Array.isArray(o)) {
var result = [];
for (var i=0;i<o.length;i++) {
result.push(deepclone(o[i]));
}
}else{
//基本类型
var result = o;
}
return result;
}
var arr2 = deepclone(arr1);
arr1.push(99999)
console.log(arr2);
</script>
</head>
<body>
</body>
</html>
1回答
同学你好,如果数据中只包含基本类型和数组,那么使用该方法可以实现深克隆。如果数据中,还包含对象形式,则需要处理一下对象,具体实现,在后面的课程中会讲解到,同学往后继续学习即可。
祝学习愉快!
相似问题