编写高质量代码、学习笔记——Javascript篇
一、良好的编程习惯
1.避免JS冲突
1>使用匿名函数将脚本包起来,减少全局变量,避免冲突。
2>团队项目有必要添加必要注释:
包括功能、编写人员名称、编写人员联系方式、编写时间。
3>使用命名空间,用作不同功能之间的通信——使用一个{}对象类型的变量作为全局变量
<script type="text/JavaScript"> var GLOBAL = {}; GLOABL.namespace = function(str){ var arr = atr.split("."),o = GLOBAL; for ( i = (arr[0] == "ALOBAL")) ? 1 : 0 ; i < arr.length; i++) { o[arr[i]] = 0[arr[i]] || {}; o = o[arr[i]]; </script>
</pre><pre name="code" class="html"><script> (function(){ <span> </span>GLOBAL.namespace("A.CAT"); <span> </span>GLOBAL.A.CAT.name = "xiaohua"; <span> </span>GLOBAL.A.CAT.move = function(){ } })();
</pre><pre name="code" class="html"></script>4>CSS放在页头,Javascript放在页尾,这样脚本的加载不会阻塞页面HTML的加载。
二、分层和库
1.分层:base、common、page三层
1>base层为common何page提供接口,包括不同浏览器下Javascript的差异等。
大致分为三块:1.操作DOM2.操作事件3.提供原生Javascript不提供的函数。
例如:透密度,IE通过滤镜实现、普通浏览器如火狐通过opacity实现:
</pre><pre name="code" class="html"><script type="text/javaScript"> <span> </span>var test = document.getElementById("id01"); <span> </span>if (document.all) { <span> </span>test.style.filter = 'alpha(opacity = 20)'; <span> </span>else { <span> </span>test.style.opacity = 0.2; <span> </span>} </script>
<span style="font-family: Arial, Helvetica, sans-serif;"></span>2>common层提供更庞大的组件,可以按功能分成一个个单独的文件
3>page层属于应用级
三、实用技巧
1.命名技巧
<div class="tab"> <ul> <li>menu1</li> <li>menu2</li> <li>menu3</li> <span style="white-space:pre"> </span></ul> </div>为以上代码中li设置挂钩,为了表示id更像tab组件私有的命名:
<div class="tab"> <ul> <li id="tab-menu1">menu1</li> <li id="tab-menu2">menu2</li> <li id="tab-menu3">menu3</li> </ul> </div>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。