美文网首页
javascript开发规范!

javascript开发规范!

作者: docC2Y | 来源:发表于2016-12-01 11:04 被阅读40次

文本缩进: 一次缩进两个空格。

注释编写: 注释是了解代码写法和目的的唯一途径。特别是在写一些看似琐碎的无关紧要的代码时,由于记忆点不深刻,注释就变得尤为重要了。

变量声明: 总是使用 var 来声明变量。如不指定 var,变量将被隐式地声明为全局变量,这将对变量难以控制。如果没有声明,变量处于什么定义域就变得不清(可以是在Document 或 Window 中,也可以很容易地进入本地定义域)。所以,请总是使用var 来声明变量。

命名法说明:
a).命名法说明
1).camel命名法,形如thisIsAnApple
2).pascal命名法,形如ThisIsAnApple
3).下划线命名法,形如this_is_an_apple ·
4).中划线命名法,形如this-is-an-apple

根据不同类型的内容,必须严格采用如下的命名法:
b).变量名:必须使用camel命名法
c).参数名:必须使用camel命名法
d).函数名:必须使用camel命名法
e).方法/属性:必须使用camel命名法
boolean类型的应当使用is、has等起头,表示其类型;·

常量使用全部字母大写,单词间下划线分割的命名方式.

空格说明: 通常运算符 ( = + - * / ) 前后需要添加空格:

使用带类型判断的比较判断: 总是使用=== 精确的比较操作符,避免在判断的过程中,由 JavaScript 的强制类型转换所造成的困扰。如果你使用== 操作符,那比较的双方必须是同一类型为前提的条件下才会有效。仅当判断 null 或undefined 时,允许使用 == null。

分号: 总是使用分号,因为隐式的代码嵌套会引发难以察觉的问题。

不要在循环体中包含函数表达式,事先将函数提取到循环体外。(解释:循环体中的函数表达式,运行过程中会生成循环次数个函数对象。)

10.字符串: 统一使用单引号(‘),不使用双引号(“)。这在创建 HTML 字符串非常有好处:

11.用三元操作符分配或返回语句。在比较简单的情况下使用,避免在复杂的情况下使用。没人愿意用10 行三元操作符把自己的脑子绕晕.

12.使用json: 当需要将数据结构存储成纯文本,或者通过
Ajax 发送/取回数据结构,尽可能使用 JSON 代替XML。JSON (JavaScript Object Notation) 是一个更简洁有效的数据存储格式,并且不依赖任何语言(and is a language-neutral)。

13.类型转换
转换成 string 时,使用 + ''。( num + ‘’; )
转换成 number 时,通常使用 +。( + str ;)
转换成 boolean 时,使用 !!。
string 转换成 number,要转换的字符串结尾包含非数字并期望忽略时,使用parseInt。必须指定进制。
number 去除小数点,使用 Math.floor / Math.round / Math.ceil,不使用parseInt。

14.数组

使用数组字面量[] 创建新数组,除非想要创建的是指定长度的数组。
遍历数组不使用 for in。(解释:数组对象可能存在数字以外的属性, 这种情况下 for in 不会得到正确结果。)

15.减少 delete 的使用。(解释:如果没有特别的需求,减少或避免使用delete。delete 的使用会破坏部分JavaScript 引擎的性能优化。)

16.DOM
对于单个元素,尽可能使用document.getElementById 获取,避免使用document.all。
对于多个元素的集合,尽可能使用 context.getElementsByTagName 获取。其中context 可以为 document 或其他元素。指定tagName 参数为 * 可以获得所有子元素。
遍历元素集合时,尽量缓存集合长度。如需多次操作同一集合,则应将集合转为数组。(解释:原生获取元素集合的结果并不直接引用DOM 元素,而是对索引进行读取,所以 DOM 结构的改变会实时反映到结果中。)
获取元素的直接子元素时使用 children。避免使用childNodes,除非预期是需要包含文本、注释和属性类型的节点。

DOM事件
优先使用 addEventListener / attachEvent 绑定事件,避免直接在HTML 属性中或 DOM 的expando
属性绑定事件处理。(解释:expando 属性绑定事件容易导致互相覆盖。)
使用 addEventListener 时第三个参数使用
false。(解释:标准浏览器中的
addEventListener 可以通过第三个参数指定两种时间触发模型:冒泡和捕获。而 IE 的attachEvent 仅支持冒泡的事件触发。所以为了保持一致性,通常
addEventListener 的第三个参数都为 false。)
在没有事件自动管理的框架支持下,应持有监听器函数的引用,在适当时候(元素释放、页面卸载等)移除添加的监听器。

相关文章

  • 《javascript基础补充--开发规范》

    JavaScript 开发规范 本篇文章主要介绍了JS的命名规范、注释规范以及开发的一些问题 目录 命名规范:介绍...

  • javascript开发规范!

    文本缩进: 一次缩进两个空格。 注释编写: 注释是了解代码写法和目的的唯一途径。特别是在写一...

  • 前端规范

    常用html、CSS、javascript前端命名规范无论是从技术角度还是开发视角,对于web前端开发规范文档都有...

  • javascript 代码建议

    [toc] 1 概要 本规范限于在浏览器中使用的javascript开发规范本规范目前适用Amd方式模块定义和调用...

  • React最佳实践

    tags:开发随笔 代码风格 用ES6,遵循Airbnb的React编码规范和javascript 编码规范。两个...

  • [React-Native]开发规范文档

    React-Native开发规范 标签(空格分隔): React-Native JavaScript 一、编程规约...

  • require/exports与import/export,有啥

    历史背景 require/exports来自野生规范当中,即这些规范是JavaScript社区中的开发者自己草拟的...

  • 前端开发规范(jk)

    前端开发规范 一、通用规范 1、TAB键用两个空格代替 2、CSS样式属性或者JAVASCRIPT代码后统一不加“...

  • javascript项目开发规范实例

    首次发表在个人博客 总结一下个人在开发及review同事代码的过程中遇到的因为一些项目规范带来的问题及认为比较好的...

  • 代码规范

    JavaScript 编码规范(草案) 该规范改编自 Airbnb JavaScript Style Guide[...

网友评论

      本文标题:javascript开发规范!

      本文链接:https://www.haomeiwen.com/subject/tcsxmttx.html