




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档交流 信息技术中心网站技术部信息技术中心网站技术部 JavaScriptJavaScript 开发规范开发规范 版本版本更新时间更新时间修改人修改人备注备注 V1 02013 文档创建 精品文档交流 目目 录录 文件命名 3 代码外观 3 注释规范 4 命名规范 4 语句规范 5 注意事项 7 参考资料 精品文档交流 文件命名文件命名 JavaScript 程序应该作为一个 js 文件存储和发布 文件名全小写 标记版本号和特性说明 扩展名小写 例如 search1 1 src js JavaScript 代码尽量不要嵌入在 HTML 中 文件开始包含类似以下注释说明 文件名 文件功能描述 创建人 创建时间 描述 修改人 修改时间 修改描述 文件功能描述着重于描述文件功能与说明 详情应在类的注释中描述 一天内有多个修改只需做做一个修改标识 在所有的代码修改处加上修改标识的注释 代码外观代码外观 列宽列宽 代码列宽控制在 100 字符左右 换行换行 当表达式超出或即将超出规定的列宽 遵循以下规则进行换行 在逗号后换行 在操作符前换行 规则 1 优先于规则 2 缩进缩进 缩进应该是每行一个 Tab 4 个空格 不要在代码中使用 Tab 字符 空行空行 空行是为了将逻辑上相关联的代码分块 以下情况应加入一个空行 类与类的定义之间 方法与方法 属性与属性之间 方法中不同的逻辑块之间 注释与它注释的语句间不空行 但与其他的语句间空一行 空格空格 关键字和 应该用空格隔开 方法名和 之间不要使用空格 多个参数用逗号隔开 每个逗号后都应加一个空格 语句中的表达式之间用空格隔开 一元操作符和操作数之间不应该使用空格隔开 除了操作符是一个单词时 如 typeof 二元操作符 除了 和 都应该使用一个空格来和操作数隔开 for 语句控制部分的 应该在后面跟一个空格 精品文档交流 括号括号 左括号 不要紧靠关键字 中间用一个空格隔开 左括号 与方法名之间不要添加任何空格 没有必要的话 不要在 return 语句中使用 花括号花括号 左花括号 放于关键字或方法名的同一行末尾 通常右花括号 独立成行 不与任何语句并列一行 If for while do 等语句后必须使用 即使 号中为空或只有一条语句 右花括号 后加注释说明语句块结束 变量声明变量声明 总是使用 var 声明变量 一行只做一个声明 在变量声明时就做初始化 变量声明应置于块的开始位置 例外 for var i 0 i len i 应避免不同层次间的变量重名 方法内禁止定义和使用全局变量 注释注释规范规范 注释应该是解释为什么和做什么 而不是介绍是什么 总是使注释保持最新 变量声明时 使用行尾注释 其他情况下 使用单行注释并于标识的代码对齐 不注释难以理解的代码 而应该重写它 避免多余的或不适当的注释 对由循环和逻辑分支组成的代码使用注释 使用具有一致的风格和语言书写注释 用空白将注释同注释分隔符分开 在没有颜色提示的情况下查看注释时 这样做会使 注释很明显且容易被找到 命名规范命名规范 命名原则命名原则 命名由字母 数字和 组成 命名是为了帮助人们阅读 避免使用系统保留字 应选择正确的名称 能够表明功能或定义目的 在编程上通过命名可以将各项明确的区分开来 避免容易被主观解释的难懂的名称 避免歧义 只要合适 在变量名的末尾或开头加计算限定符 在一组相关变量的命名中使用互补对 如 min max begin end 和 open close 布尔变量名应该包含 Is 这意味着 Yes No 或 True False 值 在命名状态变量时 避免使用诸如单纯 Flag 或 Status 的术语 不要使用匈牙利语表示法 缩写缩写 不要将缩写或缩略形式用作标识符名称的组成部分 精品文档交流 不要使用计算机领域中未被普遍接受的缩写 在适当的时候 使用众所周知的缩写替换冗长的词组名称 如 URL HTML 使用缩写时 对于超过两个字符长度的缩写请使用 Pascal 大小写或 Camel 大小写 但应当大写仅有两个字符的缩写 如 System IO 而不是 System Io 不要在标识符或参数名称中使用缩写 类类名称名称 用名词或名词短语命名类 使用 Pascal 大小写 用名词或名词短语命名类 使用全称避免缩写 除非缩写已是一种公认的约定 如 URL HTML 不要使用类型前缀 不要使用下划线 Namespace 命名全部使用小写 声明类时需带上 Namespace 属性属性 使用 Camel 大小写 用名词或名词短语命名类 内部受保护的属性使用下划线开头 参数参数 参数名称应当具有足够的描述性 以便参数的名称及其类型可用于在大多数情况下确 定它的含义 对参数名称使用 Camel 大小写 方法方法 使用动词或动词短语命名方法 使用 Camel 大小写 类内部受保护的方法使用下划线开头 事件事件 对事件处理程序名称使用 on 开头 事件处理程序都提供两个参数 sender args 使用 Before After 表示事件发生的时间顺序 如 onBeforeSave onAfterSave 一些事件可以用时态表示顺序 如 onChange onChanged 使用 Camel 大小写 变量变量 使用 Camel 大小写 用名词或名词短语命名类 类内部或函数内部使用的变量使用下划线开头 常量常量 以下规则概述常量的命名指南 所有单词大写 多个单词之间用 隔开 语句语句规范规范 每行最多包含一个语句 不要在一行中以分号分隔多个语句 循环变量的使用或压缩代码不用遵循此规则 语句的缩进应符合代码外观的规定 左花括号 跟随在父语句的后面 精品文档交流 即使只有一条子语句要不要省略花括号 不要在 return 语句中使用括号 或花括号 ifif if elseif else ifif else ifelse if 语句语句 if condition statements if condition statements else statements if condition statements else if condition statements else statements forfor 语句语句 for initialization condition update statements for variable in object statements 注意 在循环过程中不要修改循环计数器 不要使用空循环 whilewhile 语句语句 while condition statements do 语句 do statements while condition 注意 do 语句始终使用 分号 结尾 switchswitch casecase 语句语句 精品文档交流 switch condition case 1 statements break case 2 statements break default statements break 注意 switch 中的每个 case 各占一行 switch 中的 case 按顺序排列 为 switch 语句提供 default 分支 所有的非空 case 语句必须用 break 语句结束 trytry catchcatch 语句语句 try statements catch e statements try statements catch variable statements finally statements returnreturn 语句语句 具有值的 return 语句不应该使用 圆括号 包围值 返回值表达式必须和 return 关键字在同一行从而避免插入分号 withwith 块语句块语句 禁止使用 with 块语句 注意事项注意事项 1 标签应该在 body 里越靠后的位置越好 2 在方法顶端定义所有变量 var 语句应该为方法体内的第一个语句 精品文档交流 3 尽量少使用全局变量 隐式的全局变量应该从来不使用 4 代码结构应该提供最好的可读性 5 如果一个字面量为匿名的 则在 function 和 左圆括号 之间应该有一个空格 6 不要在命名中使用里使用 把它留给 JQuery 7 不要使用 下划线 作为名字的首字母 有时被用来表示私有 但是只是语义上的 8 全局变量应该全部使用大写字母 9 在每个简单语句末尾添加一个 分号 10 使用 替代 new Object 使用 替代 new Array 11 当成员名字为连续的整数时使用数组 当成员名字为任意的字符串或名字时使用对象 12 谨慎使用逗号操作符 一般包括在 for 语句的控制部分的 对象字面量 数组字面量 var 语句和参数列表 13 不要在 if 和 while 语句块中对条件部分赋值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年《突发事件应对法》知识考试题库(+答案解析)
- 2025年动画编程试题及答案详解
- 高三9月英语试题
- 2026届湖北省随州市二中学数学七上期末综合测试模拟试题含解析
- 小学数学下册期末完美模拟试题
- 2025年咖啡师职业技能测试卷-咖啡师饮品命名与创意营销试题
- 2025年护士执业资格考试题库-内科护理学专项护理操作真题模拟与答案及及答案及解析
- 2025年健身教练职业技能考核试卷:中级技能测试题库
- 2025合作伙伴货物供应业务销售合同
- 2025年高压电工考试题库:高压设备操作流程规范及电力输送试题
- 机加工安全生产培训考核试题及答案(班组级)(精)
- 电梯从业证考试试题及答案解析
- 第二十四届上海市青少年计算机创新应用竞赛 python校内选拔试题及答案
- 2024年武汉商学院公开招聘辅导员笔试题含答案
- 江苏省宿迁市泗阳县2024-2025学年高二下册期末调研测试语文试题【附答案】
- 2025年《传染病防治法》综合培训试题(附答案)
- 储能电站项目实施方案
- 墙布工厂工程定制方案(3篇)
- 2025年工勤技师考试题库及答案
- 新鲜的牛肉采购合同范本
- 2025至2030年中国室内亲子游乐场行业市场评估分析及投资发展盈利预测报告
评论
0/150
提交评论