博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS可维护性代码
阅读量:5355 次
发布时间:2019-06-15

本文共 1294 字,大约阅读时间需要 4 分钟。

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

    }

}

转载于:https://www.cnblogs.com/xhrGeek/p/5100632.html

你可能感兴趣的文章
Linux常用命令(二十四)
查看>>
4种java定时器
查看>>
Vue.js 教程
查看>>
linux 设置网卡
查看>>
hive 语法 case when 语法
查看>>
Ajax:js读取txt内容(json格式内容)
查看>>
Task 7 买书最低价格问题
查看>>
Selenium3+python自动化007-警告框
查看>>
html5 相同形状的图形进行循环
查看>>
springboot中文官方文档
查看>>
lamdba表达式
查看>>
ThreadLocal实现线程范围内共享
查看>>
多校HDU5723 最小生成树+dfs回溯
查看>>
ASP.NET MVC分页实现之改进版-增加同一个视图可设置多个分页
查看>>
关于ASP.NET MVC开发设计中出现的问题与解决方案汇总 【持续更新】
查看>>
关于Entity Framework中的Attached报错的完美解决方案终极版
查看>>
Selenium之Web页面滚动条滚操作
查看>>
组合数据类型练习,英文词频统计实例上
查看>>
Uber回馈开源的一些软件
查看>>
day 3 修改haproxy.cfg 作业
查看>>