最近开始接触AJAX框架―EXT了,学习之余,也将自己的心得记录下来,就权当是读书笔记吧。其实之前总是不太适应基于对象的javascript写法,不过通过EXT框架,还是基本熟悉了其对象式的编码,很基础,见下文。
1 namespace
EXT用命名空间来组织类定义,就好比c#的namespace或java的package。如定义pojo类的命名空间:
Ext.namespace("Ext.domain");
JAVA代码对照:
package Ext.domain;
2 类定义
同javascript一样,用function定义类,(但是此处,还没有说明构造函数),如:
EXt.domain.Person = function() { } ;
3 类成员变量定义
可以用prototype来给某个类定义成员变量,既然是用prototype,就是非静态的。Ext.apply是EXT框架提供的静态的方法,可以完成这一定义。如下:
Ext.apply(Ext.domain.Person.prototype,{name:"张三"});
JAVA代码对照:
private String name = "张三";
public void setName(String name) {this.name = name;}
public String getName() {return this.name;}
4 类实例方法定义
代码如下:
Ext.apply(Ext.domain.Person.prototype,{
getDetails : function(){
alert(String.format("姓名:{0},年龄{1} ",this.name,this.age));
}
});
5 类静态方法
Ext.domain.Person.getDetails = function(_name,_age){
var _person = new Ext.domain.Person();
_person.name = _name;
_person.age = _age;
alert(String.format("姓名:{0},年龄{1} ",_person.name,_person.age));
}