码迷,mamicode.com
首页 > Web开发 > 详细

JS可维护性代码

时间:2016-01-04 23:53:26      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

最近在看一本Js的书名叫“Javascript高级程序设计”在里面学到了很多东西,是一本不错的书,非常值得一看。

解耦css/javascript

element.style.color="red";

element.style.backgroundColor="blue";

以上方式css和javascript的太过于紧密;我们应写成:

element.className="edit";

css样式和js代码完全分离。

再次优化:

var cssName={

    css1:"edit",

}

element.className=cssName.css1;

2.解耦应用逻辑/事件处理程序

function handlekeyPress(event){

    event=EventUtil.getEvent(event);

    if(event.keyCode==13){

       var target=EventUtil.getTarget(event);

       var value=5*parentInt(target.value);

       if(value>10){

          document.getElement("error-msg").style.display="block";

      }

    }

};

写成:

function validateValue(value){

   value=5*parseInt(value);

   if(value>10){

      document.getElement("error-msg").style.display="block";

   }

};

function handleKeyPress(event){

    event=EventUtil.getEvent(event);

    if(event.keyCode==13){

        var target=EventUtil.getTarget(event);      

     }

};

 

3.避免全局量:

var name="Ncihoals"

function sayName(){

}

写成:

var MyApplication={

   name:"Nicholas",

   sayName:function(){

   }

}

Js命名空间的概念:

//创建全局对象

var Wrox={};

//创建命名空间:

Wrox.ProJs={};

将所用的变量的都附加到Wrox上

Wrox.ProJs.EventUtil={};

这样做的最主要目的是为了在同一页面中能与其它的js文件共存,不会出现重名的情况。

 

3.避免与null进行比较:

function sortArry(values){

   if(values!=null){   //避免

        values.sort(comparator);

    }

}

function sortArry(values){

    if(values instanceof Arry){ //推荐

        values.sort(comparator);

    }

}

JS可维护性代码

标签:

原文地址:http://www.cnblogs.com/xhrGeek/p/5100632.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!