看来还是要经常总结自己平时遇上的问题,才不至于每次都要google。前几天google到一篇好的文章,结果过几天在去看的时候,那个文章已经找不到了,看来还是自己写文章比较好:
1、FMS中的类
FMS中定义类比较麻烦,先建一个myClass.asc,然后定义构造函数
function myClass(){
}
在调用myClass的时候,先要load("myClass.asc"),然后注册该类:
application.registerClass("myClass",myClass)。(注意两个名字要一样)这样类就定义好了
2、FMS中的静态方法与静态变量
FMS不支持static、public、private,只要不是定义在client或构造函数里this/var修饰的变量,都是静态变量,全局都可以访问得到,例如在myClass.asc中定义:
function myClass(){
staticVar1=1 //静态变量
}
myClass.show=function(){//静态方法
}
3、FMS中的实例方法与实力变量
FMS中定义实例的方法要加上"prototype",定义实例的变量要加上this或var修饰符
function myClass(){
staticVar1=1 //静态变量
this.id=0//实例变量
var oo //实例变量
}
myClass.show=function(){//静态方法
}
myClass.prototype.look=function(){实例方法
}
调用的话必须new一个实例,
var me=new myClass()
me.id=1;
me.oo=22;
me.look();
另外FMS中还有一个很有趣的事,全局变量一旦被某个client修改后,就会变成该client的变量,而且每个client之间该变量是独立的。
以上观点可能有不完善或错误的地方,希望各位高手不吝赐教!