在一个项目中为了减少全局变量的使用及模块化的开发我们使用的构造函数加原型的开发模式
var App = function(){ //管理构造函数的属性 this.name = 'jack' } //页面初始化时执行 App.prototype.init = function(){ //绑定事件 this.bindevent() //可以通过原型的方法绑定些自己需要的函数 } App.prototype.bindevent = function(){ //此处书写绑定的事件,也可以通过函数将绑定的事件分开管理 }
以上是构造函数使用的基本架子,但是使用的过程中我遇到一个问题:有时会出现在构造函数外部有别的函数,而在函数里边又要用到构造函数中的属性和方法
可以使用Object的create方法来解决上边的问题
var a = Object.create(new App())
这样a中就存在了构造函数中的属性和方法,并且属性是创建时的构造函数中的属性,如果create方法的参数是构造函数名的话可以通过name属性获取构造函数的名称