最近心血来潮,想开发一个基于Google Map的留言本,磨炼一下自己的Js水平。
首先,需要一个Div在页面中显示当前信息,例如正在装载,正在提交留言以及返回操作是否成功等。如果直接用alert()给出就算不得是User Friendly了。其实一个函数就能搞定,不过为了学点javascript类方面的知识,还是自己给自己找点麻烦好了——这句话其实不对,因为javascript里函数本身就是对象。闲话不说了,先把这个类贴出来
 1gmapbook开发日记之创建javascript类//---------------------------------------------------------------------------
 2gmapbook开发日记之创建javascript类//                                    GMapbookInfo类
 3gmapbook开发日记之创建javascript类//---------------------------------------------------------------------------
 4

首先是下面这段代码,前7行是从prototype里拷贝出来的,因为喜欢var NewObject= Class.create()这种类的创建方式
这段代码的意思是类名为Class的对象中有个create方法,该方法创建一个新对象(即return function(){...},记住JS的类基于prototype,函数即对象),并把该对象通过new传递过来的参数赋值给新类的构造函数initialize(即this.initialize.apply(this, arguments))。
1 Class.create();

 后面代码{...}里的内容就是一个新的类,再把该类传递给GMapbookInfo的prototype,这样就完成了JS类的创建
当然,创建类也有别的办法,如下
首先定义类,有两种方法
function newObj(arg) { this.arg = arg } 或 var newObj= function() {...}
定义类属性或方法可如下定义
newObj.prototype.propertyA = xxx;
newObj.prototype.methodA = function(){...};

相关文章: