您的位置:首页 > Web前端 > JavaScript

JavaScript编码规范

2017-06-24 14:44 169 查看
JavaScript编码规范

一、前言

在开发中、代码规范是很有必要的,可增强代码的可读性,一眼就能看懂要表达的意思,规范就是符合规则,使代码有利于后期维护,也能很大程度的提高开发效率。一个正常的网站有很多 JS
代码,如果在编写的过程中,不遵循某种规则,那么写到后面自己都看不懂自己写的什么,这是很麻烦的一件事,特别是当随着需求的不断变更,需要维护项目的时候。当随着项目的代码量的提升,需要重构的时候。你会明白一个好的开发规范多么多么的重要。所以要在平时的练习、开发过程中,养成良好的编写代码的习惯。

二、代码规范

代码规范通常包括以下几个方面:

· 变量和函数的命名规则

· 空格,缩进,注释的使用规则。

· 其他常用规范…

规范的代码可以更易于阅读与维护。

代码规范一般在开发前规定,可以跟你的团队成员来协商设置。

三、基本要求

1. 编码方式统一用UTF-8. 现在开发项目基本都是用的UTF-8。

2. 缩进统一为4个空格,将Tab size设置为4则可以保证tab键按4个空格缩进。

四、命名

命名的基本原则:

· 尽可能的使用统一的命名规范;

· 不是用汉语拼音

· 除了常见的英文缩写,尽量少地使用缩写;

JS命名一般都采用匈牙利命名法或者驼峰命名法:

1、匈牙利命名法的原则:变量名=属性+类型+对象描述。他的关键是:以一个或多个小写字母作为前缀,前缀之后是一个或多个首字母大写的单词组合,该单词指明变量的用途。

提示: 匈牙利命名法是一位微软程序员(一位叫 Charles Simonyi 的匈牙利程序员,在微软呆了几年)发明的,多数的C,C++程序都使用此命名法(本篇不多介绍)。

2、驼峰命名法的原则:由小(大)写字母开始,后续每个单词首字母都大写(推荐使用)。

按照第一个字母是否大写,分为:
大驼峰命名 (UpperCamelCase) :每个单词的第一个字母都大写。

小驼峰命名 (lowerCamelCase) :除第一个单词以外,每一个单词的第一个字母大写。

1)、变量命名:

成员变量命名:小驼峰命名,如:

n firstName = "John";

n lastName = "Doe";

符:常用规范

s:表示字符串。例如:sName,sHtml;

n:表示数字。例如:nPage,nTotal;

b:表示逻辑。例如:bChecked,bHasLogin;

a:表示数组。例如:aList,aGroup;

r:表示正则表达式。例如:rDomain,rEmail;

f:表示函数。例如:fGetHtml,fInit;

o:表示以上未涉及到的其他对象,例如:oButton,oDate;

g:表示全局变量,例如:gUserName,gLoginTime;

常量命名:所有单词字母均大写、单词之间下划线连接;如:

n 网站的URL

n MAX_COUNT = 10

 

控件变量命名:小驼峰命名;

n 建议使用 控件缩写+逻辑名称 格式,例如 tvPostTitle、etUserName;

n 对应的控件的 id 的命名控件缩写_逻辑名称,单词均小写,用下划线连接,例如:tv_post_title、et_user_name;

函数命名:小驼峰命名;前缀应当为动词、可使用常见动词预定;如:

 

 动词  
含义

返回值

can
判断是否可执行某个动作(权限)

函数返回一个布尔值。true:可执行;false:不可执行

has
判断是否含有某个值

函数返回一个布尔值。true:含有此值;false:不含有此值

is
判断是否为某个值

函数返回一个布尔值。true:为某个值;false:不为某个值

get
获取某个值

函数返回一个非布尔值

set
设置某个值

无返回值、返回是否设置成功或者返回链式对象

load
加载某些数据

无返回值或者返回是否加载完成的结果

 

n // 获取名称

function getName() {

    return this.name;

}

 资源命名:

n 图标资源以 ic 为前缀,例如 ic_chat ,指聊天图标;

n 背景图片以 bg 为前缀,例如 bg_login ,指的是登录页的背景图;

n 按钮图片以 btn 为前缀,例如 btn_login ,指的是登录按钮的图片,不过这只有一种状态,需要加上状态的可以在后面添加,例如 btn_login_pressed ,表示登录按钮按下的图片;

n 当使用 shape 和 selector 文件为背景或者按钮时,命名参照以上说明;

 

五、注释规范

JS支持两种不同类型的注释:单行注释和多行注释。

5.1单行注释

说明:单行注释以两个斜线开始,以行尾结束。

语法:// 这是单行注释

使用方式:

① 单独一行://(双斜线)与注释文字之间保留一个空格。

② 在代码后面添加注释://(双斜线)与代码之间保留一个空格,并且//(双斜线)与注释文字之间保留一个空格。

③ 注释代码://(双斜线)与代码之间保留一个空格。

示例:

 

// 调用了一个函数;1)单独在一行

setTitle();

var maxCount = 10; // 设置最大量;2)在代码后面注释

// setName(); // 3)注释代码

5.2、多行注释

说明:以/*开头,*/结尾

语法:/* 注释说明 */

使用方法:

① 若开始(/*)和结束(*/)都在一行,推荐采用单行注释。

② 若至少三行注释时,第一行为/*,最后行为*/,其他行以*开始,并且注释文字与*保留一个空格。

示例:

/*

* 代码执行到这里后会调用setTitle()函数

* setTitle():设置title的值

*/

setTitle();

5.3、函数注释

说明:函数(方法)注释也是多行注释的一种,但是包含了特殊的注释要求,参照 javadoc(百度百科)。

语法:

/**

* 函数说明

* @关键字

*/

注释名

语法

含义

示例

@param

@param 参数名 {参数类型}  描述信息

描述参数的信息

@param name {String} 传入名称

@return

@return {返回类型} 描述信息

描述返回值的信息

@return {Boolean} true:可执行;false:不可执行

@author

@author 作者信息 [附属信息:如邮箱、日期]

描述此函数作者的信息

@author 张三 2015/07/21 

@version

@version XX.XX.XX

描述此函数的版本号

@version 1.0.3

@example

@example 示例代码

演示函数的使用

@example setTitle('测试')

常用注释关键字:(只列出一部分,并不是全部)

最近想学习js,先整理一片js的编码规范,先整这么一点,后期慢慢追更。。。,不足支出还望多指教。谢谢!!!

参考:

http://zywhunter.blog.163.com/blog/static/64659941201281434147628/

http://www.w2bc.com/article/216584

RUNOOB.COM

http://www.cnblogs.com/polk6/p/4660195.html

The end!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息