编写高质量代码、学习笔记——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>




郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。