Ajax_12|深拷贝
Posted 接引之书
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ajax_12|深拷贝相关的知识,希望对你有一定的参考价值。
<!DOCTYPE html>
<html>
<head>
<meta charset="Utf-8" />
<title></title>
<script type="text/javascript">
window.onload = function(){
/*
深拷贝
取消两对象之间关联,但是值一样
创建一个空的obj2对象,把obj里面的属性值一个一个的取出来,然后再把这些值一个一个复制进行;
*/
var obj = {
name:"one",
age:18,
testObj:{
test:"",
test2:[]
}
}
//@para obj:接收要复制的对象
function copy(obj){
var newObj = {};
//创建一个key变量,这个变量是obj对象循环出来的所有属性
for(var key in obj){
// console.log(key); //这个打印的是key值
// console.log(obj[key]); //这个打印的是value值
// if(typeof obj[key]==="object"){ //如果属性值是对象的话
// newObj[key] = copy(obj[key]); //
// }else{
// newObj[key] = obj[key]; //不是对象的话,直接赋值
// }
newObj[key] = obj[key]; //这也是能执行的
}
return newObj;
}
var obj2 = copy(obj);
obj2.name = "clyun";
console.log(obj);
console.log(obj2);
}
</script>
</head>
<body>
</body>
</html>
浏览器:
目录大纲
以上是关于Ajax_12|深拷贝的主要内容,如果未能解决你的问题,请参考以下文章
包,logging模块,hashlib模块,openpyxl模块,深拷贝,浅拷贝