热烈祝贺台州朗动科技的站长论坛隆重上线!(2012-05-28)    热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)    站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.(2009-08-08)    热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.(2009-03-28)    台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)    台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)    热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)    热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)    台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)    特此通知:新台州站长论坛的数据信息全部升级成功!">特此通知:新台州站长论坛的数据信息全部升级成功!(2007-09-01)    台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)    台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)    禁止发广告之类的帖,已发现立即删除!(2007-08-30)    希望各位上传与下载有用资源和最新信息(2007-08-30)    热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)    
便民网址导航,轻松网上冲浪。
台州维博网络专业开发网站门户平台系统
您当前的位置: 首页 » JavaScript/JQuery编程 » JavaScript风格要素

JavaScript风格要素

论坛链接
  • JavaScript风格要素
  • 发布时间:2007-09-20 22:39:06    浏览数:7196    发布者:superadmin    设置字体【   
关于英文的写作有一本十分著名的书,The Elements of Style(风格要素),编写程序也有一本The Elements of Programming Style(编程风格要素)。证明了在某种程度上,编写程序其实就是语文写作,清晰的风格对程序的质量有着重要的影响。草率含混的风格会隐蔽程序真性。

作为JavaScript Guru, Douglas Crockford提出了自己对JavaScript风格的创见(第一部分,第二部分)。

第一部分主要讨论JavaScript语言本身,包括:

淘汰过时的构建。
讨论了在HTML页面引入JavaScript的方式。经典的写法是:

<script language=javascript><!--
--></script>language
并不是W3C所认同的标准,建议使用的是
type
, 但作为
type
值的MIME type并没有标准化(有时是
text/javascript
, 有时是application/ecmascript),但目前所有的浏览器都是使用JavaScript作为默认的脚本语言,因此仅仅些
<script>就是安全的。随着NetScape 3的淘汰,
<-- -->
也不是必要的了。

(注:这个东西Web标准社区也有自己的看法,并认为应该写
type="text/javascript"
,我也赞成。)

在结构中始终使用区块。
莫偷懒,省略区块(即
{ }
)会引发不经意的错误和麻烦。即使只有一句,也老老实实写上:

if (expression) { ... }避免在表达式中进行赋值。虽然可以使代码紧凑,但会让控制流程难于理解。
使用对象扩充。在不需要构造函数的对象中,不如先创建一个空对象,然后扩充它。
使用通用库。注意提高代码的重用。
第二部分主要讲的是一些使程序更清晰和简洁的习惯用法:

使用
==
得当心强类型。
1 == true
是真,但
1 === true
却为假。
使用
?:
运算符选择两值之一。在这种操作中,三元运算符为此而生。
永远不要使用隐含的全局变量。请记得声明变量时加上
var
.
不要使用
?:
来选择两种行为的其一。写作
p.style.backgroundColor = z ? '#fff' : '#989898';
而不是
(z == 0) ? p.style.backgroundColor = '#fff' : p.style.backgroundColor = '#989898';

使用
||
来指定一个默认值。最典型的莫过于处理事件参数了:
var e = e || event;

全局变量是邪恶的。
使用内部函数来避免全局变量。
这些风格是Crock在2005年提出的,现在有些已经深入人心(如不要使用全局变量),因而也没有必要多做解释了。如果你有所疑惑,不如详细看看这两篇风格文章,里面有大量的代码来举证这些风格的重要性。

更新:Dojo的风格指南也不错。
娱乐休闲专区A 影视预告B 音乐咖啡C 英语阶梯D 生活百科
网页编程专区E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技术区 N 系统管理O 服务器架设P 网络/硬件Q 编程序开发R 内核/嵌入
管理中心专区S 发布网址T 版主议事U 事务处理