js 建立/克隆對象

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	
</body>
</html>
<script>
	function person(name){

		this.name = name;
	}	

	person.prototype.getname = function(){
		return this.name;
	}


	// 建立對象,
	var objectCreate = function(){
		var obj  = new Object();
		var _construct = [].shift.call(arguments);
		obj.__proto__ = _construct.prototype;

		var ret  = _construct.call(obj,arguments);
		return typeof ret  === "object"  ? ret  : obj;
	}

	// 克隆對象.
	var createObject =function(obj){
		var F= function(){};
		F.prototype = obj;
		return new F();
	}


	var A  = objectCreate(person,'zhangchao');
	console.log(A);
	console.log(A.getname());

	var B  =createObject(A,'zhangchao');

	console.log(B);
	console.log(B.getname());

</script>
相關文章
相關標籤/搜索