本文主要是介绍JS设计模式学习笔记一:对象收编变量 检测类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.1函数基本形式(全局变量)
function checkName(){ //验证姓名} function checkEmail(){ //验证邮箱}function checkPassword(){ //验证密码}
1.2函数的另一种形式 (全局变量)
var checkName =function(){ //验证姓名}var checkEmail = function(){ //验证邮箱}var checkPassword=function(){ //验证密码}
上面声明了多个函数也就是多个全局变量,当多人协作时,如果别人也定义了同样的方法或者自己定义了很多方法,就容易存在被覆盖的风险,且这种相互覆盖的问题是不容易察觉的。所以可以将它们放在一个变量里保存,这样就可以减少覆盖或被覆盖的风险,当然一旦被覆盖所有的功能都会失效,但这种现象很明显也容易察觉。
1.3 用对象收编变量:
可以创建一个检测对象,然后把函数方法放在里面:
var CheckObject={checkName: function(){ //验证姓名},checkEmail:function(){ //验证邮箱},checkPassword:function(){ //验证密码}
}
这里我们将所有函数作为CheckObject 对象的方法,这样我们就只有一个对象,而我们要想使用它们也很简单,比如检测姓名CheckObejct.checkName(),只是在我们原来使用的函数式前面多了个对象名称。
1.4 对象的另一种形式:
在JS中函数也是一种对象,所以可以有如下写法:
var CheckObject = function(){};CheckObject.checkName = function(){//验证姓名
}CheckObject.checkEmail = function(){//验证邮箱
}CheckObject.checkPassword=function(){//验证密码
}
使用和前面的方式是一样的,比如CheckObject.checkName(),但这个对象类在用new 关键字创建新的对象时,新创建的对象是不能继承这些方法的。
1.5 真假对象
如果想简单得复制对象,可以将这些方法放在一个函数对象中:
var CheckObject = function(){return {checkName:function(){//验证姓名},checkEmail:function(){//验证邮箱},checkPassword:function(){//验证密码}}
}
var a = CheckObject();
a.checkEmail();
这篇关于JS设计模式学习笔记一:对象收编变量 检测类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!