今天在学习JS过程中,了解到了JS构造函数的封装规范,下面简单记录一下
1.为什么要使用构造函数进行封装?
在很多企业开发中,相关技术人员可能不止你一个,可能有好几个甚至一个团队来协同进行开发,每个人各司其职,写不同的代码。那么为了各自写的功能易读写。都会吧自己写的功能封装成一个模块。这时,构造函数就起了很大的作用。
2.如何进行封装?
简单来说就是吧自己需要写的功能和变量,写在单独的模块里,在需要的时候再来调用它。
来看一个例子
// 定义用来实例化的构造函数
function Teacher(opt){
this.name = opt.name;
this.sex = opt.sex;
this.age = opt.age;
this.playGuitar = function() {console.log(opt.song)}
}
// 实例化构造函数,并传参
var teacher = new Teacher({
name: "张三",
sex: "男",
age: "26",
song: "Hey Judy",
})
console.log(teacher.song) // Hey Judy
上面的代码简单诠释了封装函数,这样做就可以将你自己写的东西放在一个构造函数下。
值得注意的是上面的构造函数在被实例化时,传入的参数是一个对象(opt
)。这样的目的是为了更加易于他人阅读。参数是键值对的方式,可以让他人更好的理解你的参数是用来干嘛,而不是根据你代码的上下文来理解。
最重要的是,后期他人维护时,不必按照顺序来传参,只需要键值对对应就可以,不易出错。
上面的写法其实在我们使用很多框架的时候就会被使用到。
最直观的就是我们所熟知的 vue.js
上面为官网的 vue.js
的使用,其实也是使用了封装构造函数的方法,函数中封装了各种各样的变量以及方法,传入的参数也是一个对象,对象中是我们需要传入的参数。
3.优点
- 方便多人团队开发:每一个构造函数代表一个人负责写的代码
- 实现解耦:多人开发难免代码有耦合情况,使用构造函数就能够很好地实现解耦
- 代码更加清晰更加方便维护
以上简单叙述了构造函数的封装规范,若有不足的地方,欢迎指出探讨。