js组件封装,调用的方法怎么写

JavaScript029

js组件封装,调用的方法怎么写,第1张

1、定义一个传入占位节点id的组件类

比如这里定义一个组件MyClass

function MyClass(id){//组件模板

}2、在组件内获取节点id

function MyClass(id){//组件模板

var _self = document.getElementById(id)//根据id获取组件

}3、定义类的方法

function MyClass(id){//组件模板

var _self = document.getElementById(id)//根据id获取组件

this.addP=function(){//定义类方法,这里是显示内容为1233

_self.innerHTML ="1233"

}

}4、直接在js中调用使用该组件方法

示例:

1、JS封装就是尽量把使用的方式简单化,内部逻辑和使用解耦。通俗的说就是使用的时候只需要知道参数和返回值,其他条件尽量不要使用人员进行设置。

2、JS封装的方法有函数方式、对象的方式、闭包的方式。

举例

1)函数方式

function kk(a,b){

   内部对a,b怎么处理就不需要关心了

}

2)对象方式

function kk(a,b){

   this.x = a

   this.y = b

}

var k = new kk(1,2)//通过面向对象的方式

alert(k.x)

3)闭包方式

function kk(a,b){

   var k = 1

   return function tt(){

      k++

   }

}

var u = kk(1,2)

u()//闭包实现累加

u()//闭包实现累加

1、定义一个类

2、类中增加一个方法

3、body中定义一个dom节点

4、脚本中把dom节点和类定义结合起来,实现特定的组件功能

示例:

<script>

function TestWidegt(did){//定义一个组件类

   var _self = document.getElementById(did)//根据id获取dom节点

   this.addP=function(){//增加组件方法,这里就是添加一个节点

      _self.innerHTML = '<p>111</p>'//在dom节点下添加节点p

   }

   return this//返回当前组件

}

function Test(){

  var t = new TestWidegt('dv')//根据占位的dom节点定义组件

  t.addP()//在占位节点中增加显示内容

}

</script>

<body>

   <input type='button' value='测试组件'/>

   <div id='dv'>111</div>  组件占位使用的dom节点

</body>