前端规范
<h4>文档注释</h4>
<h4>思考:规范</h4>
<pre><code>/**
* @func
* @desc 一个带参数的函数
* @param {string} a - 参数a
* @param {number} b=1 - 参数b默认值为1
* @param {string} c=1 - 参数c有两种支持的取值</br>1—表示x</br>2—表示xx
* @param {object} d - 参数d为一个对象
* @param {string} d.e - 参数d的e属性
* @param {string} d.f - 参数d的f属性
* @param {object[]} g - 参数g为一个对象数组
* @param {string} g.h - 参数g数组中一项的h属性
* @param {string} g.i - 参数g数组中一项的i属性
* @param {string} [j] - 参数j是一个可选参数
*/
function foo(a, b, c, d, g, j) {
...
}</code></pre>
<h4>数组对象后面不要有逗号</h4>
<pre><code class="language-javascript">// good
var a = {
b: 1,
c: 2
};</code></pre>
<h4>括号</h4>
<p>下列关键字后必须有大括号(即使代码块的内容只有一行):if, else, for, while, do, switch, try, catch, finally, with。</p>
<pre><code class="language-javascript">// not good
if (condition)
doSomething();
// good
if (condition) {
doSomething();
}</code></pre>
<h4>null</h4>
<p>不要用null来判断函数调用时有无传参
不要与未初始化的变量做比较</p>
<pre><code class="language-javascript">// good
var a = null;
if (a === null) {
...
}</code></pre>
<h4>undefined</h4>
<p>永远不要直接使用undefined进行变量判断;
使用typeof和字符串'undefined'对变量进行判断</p>
<pre><code class="language-javascript">// good
if (typeof person === 'undefined') {
...
}</code></pre>
<h4>目录命名</h4>
<pre><code>参照项目命名规则;
有复数结构时,要采用复数命名法。
例:scripts, styles, images, data_models</code></pre>
<h4>JS文件命名</h4>
<pre><code>参照项目命名规则。
例:account_model.js</code></pre>
<h4>CSS, SCSS文件命名</h4>
<pre><code>参照项目命名规则。
例:retina_sprites.scss</code></pre>
<h4>HTML文件命名</h4>
<pre><code>参照项目命名规则。
例:error_report.html</code></pre>