javascript设计模式_简单工厂模式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>简单工厂模式</title>
		<!--简单工厂模式,又叫静态工厂方法,由一个工厂对象决定创建一种产品对象类的实例,只要用来创建同一类对象。-->
		<!--使用情况,有很多类的时候,每次创建实例对象还要找到相应的类,太麻烦,
		将这些类封装在一个函数里,这样只需要记住这个函数,通过这个函数就可以创建我需要的对象,
		不用再关注创建这些对象到底依赖于哪个基类(通过工厂函数传入一个字段,使用switch区分,分别完成创建实例的操作-->
	<script>
		window.onload=function(){
			
			var basketball=function(){
				this.info="篮球盛行于美国";				
			}
			basketball.prototype={
				getMember:function(){
					console.log("5个人");
				},
				getBallSize:function(){
					console.log("大");
				}
			}
			
	 		var football=function(){
				this.info="足球盛行于巴西";				
			}
			football.prototype={
				getMember:function(){
					console.log("11个人");
				},
				getBallSize:function(){
					console.log("小");
				}
			}
			
			var ballFactor=function(name){//在工厂类中通过传入的name分别进行相应的实例化对象操作
				switch(name){
					case "basketball":
						return new basketball();
					case "football":
					return new football();
				}
			}	
			
			var test=new ballFactor("basketball");//可以直接操作test
			console.log(test);
			console.log(test.info);
			test.getMember();
			console.log("额");
			
			
		}
		

	</script>
	</head>
	<body>
		<p>按F12打开调试界面</p>
	</body>
</html>

猜你喜欢

转载自blog.csdn.net/CWH0908/article/details/88943580
今日推荐