WEB开发网
开发学院网页设计JavaScript JSON进阶七——AOP 阅读

JSON进阶七——AOP

 2010-09-14 13:40:35 来源:WEB开发网   
核心提示:小弟最近很迷恋JSON,以至于俺媳妇也吃起JSON的醋来(开个玩笑,JSON进阶七——AOP,呵呵),至于小弟举的例子算不算面向切面(AOP),做数据验证,组合等等,仁者见仁,智者见智

小弟最近很迷恋JSON,以至于俺媳妇也吃起JSON的醋来(开个玩笑,呵呵)。至于小弟举的例子算不算面向切面(AOP),仁者见仁,智者见智。只是小弟对JSON的一种使用小技巧。

我可能使用AJAX,然后从后台调用一段数据,该数据可能是JSON格式的。

例如:{name:"张三",sex:1}

好了我们需要做的就是把sex转换成中文,当然你可以选择在后台处理,当然我们也会选择在前台完成?

当我们把数据一个一个放进对应的位置事,我们一般会这样做。

var json = {name:"张三",sex:1};

for(var f in json){

     if (f == “sex”){

          document.getElementById(f).value = josn[f] == 1 ? "男" : "女";

     } else {

          document.getElementById(f).value = josn[f];

     }

}

如果在来一个证件类型什么的,是不是我们还要在判断一次?

在来N个,我们是不是用Switch?

不~我们选择更好的方式。

var jsonEnum = {

     sex: function(val){

          var a = val == 1 ? "男" : "女";

          return a;

     },

idType: function(val){

        var a = null;

        switch(val){

       ..

          }

     }

};

var jsonBean = {
 json:NaN,
  Get: function(key){
       if (jsonEnum[key]){
              return jsonEnum[key](this.json[key]);
        }
        else {
        return this.json[key];
        }

   }
};

var json = {name:"张三",sex:1,idType:1};

jsonBean.json = json;
for(var f in json){
          alert(jsonBean.Get(f));

}

jsonBean我们姑且可以把这个东西看成类似于Spring的容器,同时把jsonEnum当成一个配置文件,以及可扩展的类?同样的我们是不是可以通过一定的方式,做数据验证,组合等等,只要我们有这样一个“容器”JSON。

系列文章:

JSON进阶一-初识JSON

JSON进阶二-面向对象的JSON

JSON进阶三-JSON的几种调用形式

JSON进阶四-前后台交互之美

JSON进阶五-JS和WCF的交互

JSON进阶六-自动组装

JSON进阶七——AOP

Tags:JSON 进阶 AOP

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接