首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

javascript种模版 从零开始(一)

2012-07-27 
javascript类模版 从零开始(一)javascript对于新手或者其他语言爱好者来说,是一个很难从写法上面去理解的,

javascript类模版 从零开始(一)

javascript对于新手或者其他语言爱好者来说,是一个很难从写法上面去理解的,于是突发奇想,写一个javascript类模版,大概模样如下:

?

?目前支持包(命名空间,引用的是Module.js),私有属性,对象类型属性的实例化,构造方法,继承,接口,静态方法等,感兴趣的同学可以下载看看。目前只是做了一个大概,还有一些功能未实现,希望大家可以给点意见,呵呵

? ? 其实主要意图还是注重在统一的写法,模式上面,形成一个大项目所具备的一些条理,层次等,从基层写起。

? ? (第一次写博客,见笑了,呵呵)

?

1.日志

?

在调试的过程中,我们经常需要看到输出结果,之前喜欢用alert,这是个很苦逼的方法,每次都有点确定,关掉之后才能继续运行下一步,所以采用log形式会方便一些。代码采用的是Log4Jse.js,这个工具很方便调用,而且兼容各大浏览器

?

?

?

?

?


2.加载完所以元素之后初始化类

?

由于javascript是动态加载的,html和script加载的先后顺序不一样,在javascript里面经常需要引用到html的DOM元素,如果采用面向对象可能需要在类的属性里面引用一个DOM,如

?

?

?KEYWORDS_里面的每一个单词代表这个模版设计的关键字,有些是类的定义用的如"classname", "construct", "properties","methods", "implement", "extend", "statics", "borrows", "constructor", "Package", "Import"

而"hashCode"作为每个对象的唯一标识,在在面向对象语言里面比较两个对象是否相等通过比较hashcode来判定,

用类模版定义类的对象都自动赋予hashCode方法(采用闭包实现),从而确定唯一性?。

"proto_properties"并没有在外部用到,内部用到的一个最为初始化对象类型属性初始的值的备份列表,每个对象在初始化的时候都需要从里面获取对象的属性值,并且克隆(clone)一份,赋予新的对象。

?

                              // 初始化对象属性for (p in classProxy["proto_properties"]) {if (!CheckForKeyWords(p)) {var cp = $.clone(classProxy["proto_properties"][p]);this[p] = cp;}}
?

?

(未完待续)

热点排行