JavaScript风格要素

真・懒写于

关于英文的写作有一本十分著名的书,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) { ... }

第二部分主要讲的是一些使程序更清晰和简洁的习惯用法:

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

更新:Dojo的风格指南也不错。