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

简单工厂模式,又叫静态工厂方法,由一个工厂对象决定创建一种产品对象类的实例,只要用来创建同一类对象。
使用情况,有很多类的时候,每次创建实例对象还要找到相应的类,太麻烦,将这些类封装在一个函数里,这样只需要记住这个函数,通过这个函数就可以创建我需要的对象,不用再关注创建这些对象到底依赖于哪个基类(通过工厂函数传入一个字段,使用switch区分,分别完成创建实例的操作)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>简单工厂模式</title>

	<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();
			
			
		}
		

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值