前言:
JS框架是一种利用过程化语言编写的框架,但是随着面向对象思想的不断深入,现在框架中已经在用过程化的语言实现着面向对象的思想,随处可见的new及方法调用,那么这是怎么实现的呢?今天只对其中一小部分(昨天工作过程中遇到的)作一个总结。
- 首先先看一下框架调用过程
var grid = new Hq.DataTable({
editable : false,
colOptions : [
{key : {name:'STATUS'},value : {display : false}},
{key : {},value : {edit : false}}
],
params : {
objId : document.getElementById("objId").value
},
callback : {
completed : function(){
//function body...
}
}
});
上述代码中就是一个典型的JS框架调用的过程,包括属性、参数及方法。
仔细观察,Hq.DataTable中的参数其实就是一个大的JSON对象,用大括号包了起来。那么问题来了:1.new 的这个Hq.DataTable哪来的,为什么能够直接在别的JS文件中调用?2.这些属性、参数及方法如何在框架中使用的?