js中的面向对象

放假逛书城看到一本关于js设计模式的书,翻了两页发现很感兴趣于是乎开啃。现在记录啃书心得。

第一章js中的面向对象。

js是一门非常灵活的语言,不同的人可以写出不同风格的代码,但是在团队开发中需要尽量保证团队开发代码风格的一致。这样才可以提高团队代码易开发、可维护以及代码规范的必然要求。话不多说,贴代码。

<meta charset = "utf-8">
<script type="text/javascript">
// 封装函数
	var CheckObject = {
		CheckName : function(){
			alert("名字");
		},
		CheckEmail : function(){
			alert("账号");
		},
		CheckPassword : function(){
			alert("密码");
		}
	}
	//var test = new CheckObject.CheckName();
//------------------------------------------------
	var CheckObject1 = function(){};
	CheckObject1.checkName = function(){
		alert("名字1");
	}
	//var test1 = new CheckObject1.checkName();
//------------------------------------------------
	var CheckObject2 = function(){
		return { 
			checkName : function(){
				alert("名字2");
			}
		}
	}
	var test2 = new CheckObject2();
	// test2.checkName();
//------------------------------------------------
	var CheckObject3 = function(){
		this.checkName = function(){
			alert("名字3");
		}
	}
	var test3 = new CheckObject3();
	// test3.checkName();
//------------------------------------------------
// prototype可理解为function的公共方法
	var CheckObject4 = function(){};
	CheckObject4.prototype = {
		checkName : function(){
			alert("名字4");
		},
		CheckEmail : function(){
			alert("邮箱4");
		}
	}
	var test4 = new CheckObject4();
	// test4.checkName();
	// test4.CheckEmail();
//------------------------------------------------
// 链式调用
	var CheckObject5 = function(){};
	CheckObject5.prototype = {
		checkName : function(){
			alert("名字5");
			return this;
		},
		CheckEmail : function(){
			alert("邮箱5");
			return this;
		}
	}
	var test5 = new CheckObject5();
	// test5.checkName().CheckEmail();
//------------------------------------------------
// 添加公共方法
	Function.prototype.addMethod = function(name,fn){
		this[name] = fn;
	}
	var methods = function(){};
	methods.addMethod("checkName",function(){
		alert("名字6");
		return this;
	});
	methods.addMethod("CheckEmail",function(){
		alert("邮箱6");
		return this;
	});
	// methods.checkName().CheckEmail();	
//------------------------------------------------
// 链式添加公共方法
	Function.prototype.addMethod = function(name,fn){
		this[name] = fn;
		return this;//!!!
	}
	var methods = function(){};
	methods.addMethod("checkName",function(){
		alert("名字7");
		return this;
	}).addMethod("CheckEmail",function(){//!!!
		alert("邮箱7");
		return this;
	});
	methods.checkName().CheckEmail();	
</script>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值