• JS可维护性代码


    最近在看一本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);

        }

    }

  • 相关阅读:
    POJ1204:Word Puzzles——题解
    HDU2222:Keywords Search——题解
    CF17E:Palisection——题解
    BZOJ2565:最长双回文串——题解
    POJ3974:Palindrome——题解
    接口测试的另一种方式 – 接口测试平台
    接口测试的另一种方式 – 接口测试平台
    接口测试的另一种方式 – 接口测试平台
    美团招聘-测试开发工程师
    美团招聘-测试开发工程师
  • 原文地址:https://www.cnblogs.com/xhrGeek/p/5100632.html
Copyright © 2020-2023  润新知