Javascript 编码约定(编码规范)

1、使用 strict 模式

在一个作用域(包括函数作用域、全局作用域)中,可以使用

"use strict";

来开启 strict 模式。

2、缩进

用 Tab 键进行代码缩进,以节约代码大小,使用4个空格的宽度来进行缩进(JSLint 建议)。

3、符号

1) 大括号

与语句放同一行,放于最后面;仅有一行语句,也使用大括号:

if (true) {
  //true
} else {
  //false
}
while (true) {
  //alert(1);
}

2) 空格

在逗号、分号、冒号后加空格
在操作符前后加空格
在大括号开始符之前
在大括号结束符和 else、while 或 catch 之间
在 for 的各个部分
如:

var a = [1, 2, 3];
var obj = {
  name: 'name',
  value: 'value'
};
for (var i = 0; i < 10; i++) {}
function func(a, b, c) {}

c = a + b;
if (a && b || c) {
  //if
} else {
  //else
}

try {
  //try
} catch(err) {
  //catch
}

3) 所有语句结束后,使用 ; 号结束

4、命名

对象:使用驼峰式,如:MyClass
方法、变量:使用混合式,如:getName(), myName
常量:大写加下划线,如:MY_NAME

5、单一 var 模式

只使用一个 var 在函数顶部进行变量声明,作用如下:

1) 提供一个单一的地址已查找到函数需要的所有局部变量
2) 防止出现变量在定义前就被使用的逻辑错误
3) 帮助牢记要声明变量,尽可能少地使用全局变量
4) 更少的编码

function func() {
  var a = 1,
    b = 2,
    sum = a + b,
    obj = {
      name: 'name',
      value: 'value'
    },
  $btn = $('#btn');
  //函数体
}

6、循环

1) for 循环

var i, arr = [];
for (i = arr.length; i--;) {
  //arr[i];
}

注:

for (var i = 0; i < document.getElementsByName().length; i++) {
  //document.getElementsByName()[0];
}

这种方式每次对 i 进行长度比较的使用对会进行 document 的查询,而通常 DOM 操作是非常耗时的。

2) while 循环

var arr = [],
  i = arr.length;
while (i--) {
  //处理
}

3) for-in 循环

var i,
  hasOwn = Object.prototype.hasOwnProperty;
for (i in man) {
  if (hasOwn.call(man, i)) { //过滤
    console.log(i, ':', man[i]);
  }
}

7、switch 选择

switch (num) {
case 0:
  //do something
  break;
case 1:
  //do something
  break;
...
default:
  //do default
}

建议使用:

var obj = {
  '0': function() {
    //do somethins
  },
  '1': function() {
    // do somethis
  }, ...
}
if (obj.hasOwnProperty(num)) {
  obj[num]();
} else {
  //do default
}

8、使用 parseInt() 的数值约定

1) 每次都具体指定进制参数:

var month = '09', day = '08';
month = parseInt(month, 10); //不加进制参数便会转换为八进制
day = parseInt(day, 10);

2) 其他常用的将字符串转换为数值的方法:

+'08';
Number('08');

9、字面量模式

不建议使用构造函数来定义:

// built in constructors (avoid)
var o = new Object();
var a = new Array();
var re = new RegExp('[a-z]', 'g');
var s = new String();
var n = new Number();
var b = new Boolean();
throw new Error('message');

建议使用更优的字面量模式:

// literals and primitives (prefer)
var o = {};
var a = [];
var re = /[a-z]/g;
var s = '';
var n = 0;
var b = false;
throw {
  name: 'Error',
  message: 'message'
}

10、其他

1) 变量内的简写单词如果在开头则全小写:xmlDocument,如果不在开头则全大写:loadXML
2) 变量必须是有意义的英文,禁止拼音

您可能感兴趣的文章:

  • 5 种JavaScript编码规范
  • 前端编码规范(3)JavaScript 开发规范
  • 最全的Javascript编码规范(推荐)
  • Node.js编码规范
  • JavaScript之编码规范 推荐
  • 浅谈JavaScript编程语言的编码规范
  • JavaScript 程序编码规范
(0)

相关推荐

  • 浅谈JavaScript编程语言的编码规范

    JavaScript 编程语言作为最流行的客户端脚本语言,早已被众多 Web 开发人员所熟悉.随着 Web2.0 时代的到来和 Ajax 技术的广泛应用,JavaScript 也逐渐吸引着更多的视线.工作中要求越多的是对 JavaScript 语言的深入学习,灵活运用,和对编码质量的保证. 对于熟悉 C/C++ 或 Java 语言的工程师来说,JavaScript 显得灵活,简单易懂,对代码的格式的要求也相对松散.很容易学习,并运用到自己的代码中.也正因为这样,JavaScript 的编码规范也

  • Node.js编码规范

    调用函数的时候,函数名与左括号之间没有空格. 函数名与参数序列之间,没有空格:所有其他语法元素与左括号之间,都有一个空格. 使用小驼峰式命名法作为所有变量和属性的命名规则. 缩进使用两空格,统一使用单引号. 关联数组,除非键名中有空格或是非法字符,否则一律不用引号. 不要将不同目的的语句,合并成一行. 不要省略句末的分号,哪怕一行只有一个语句. 不要使用自增(++)和自减(--)运算符,用+=和-=代替. 不要使用"相等"(==)运算符,只使用"严格相等"(===)

  • JavaScript之编码规范 推荐

    一.命名 1.应给变量和函数取一个含义确切的名称,不要随意命名. 2.非构造函数采用驼峰命名法,尽量采用动宾结构,以与变量名相区别,如getName或IsFull.构造函数(即自定义类型)名称首字母大写,以与非构造函数相区别,如Person. 3.变量采用驼峰命名法.由于JavaScript是一种弱类型语言,因此建议在变量名称前加前缀:整形(i),浮点数(f),布尔型(b),字符串(s),数组(a).但不强制这么做,可根据个人爱好选择,选择好后就不要混用加前缀和不加前缀这两种方式了. 二.布局

  • 5 种JavaScript编码规范

    什么是编码规范 编码规范就是指导如何编写和组织代码的一系列标准.通过阅读这些编码规范,你可以知道在各个公司里代码是如何编写的. 我们为什么需要编码规范 一个主要的原因是:每个人写代码的方式都是不同的.我可能喜欢这么写,而你喜欢用另一种方法写.如果我们只处理自己的代码,这样并没有什么问题.但如果有成千上万的程序员同时在一个代码库上面工作呢?如果没有规范,事情很快会变得一团糟.代码规范可以让新人迅速的熟悉相关的代码,并且也能写出让其他程序员简单易懂的代码. Airbnb JavaScript Sty

  • 前端编码规范(3)JavaScript 开发规范

    JavaScript规范 变量声明 总是使用 var 来声明变量.如不指定 var,变量将被隐式地声明为全局变量,这将对变量难以控制.如果没有声明,变量处于什么定义域就变得不清(可以是在 Document 或 Window 中,也可以很容易地进入本地定义域).所以,请总是使用 var 来声明变量. 采用严格模式带来的好处是,当你手误输入错误的变量名时,它可以通过报错信息来帮助你定位错误出处. 变量名 变量名推荐使用驼峰法来命名(camelCase) 全局变量为大写 (UPPERCASE ) 常量

  • JavaScript 程序编码规范

    软件的长期价值直接源于其编码质量.在它的整个生命周期里,一个程序可能会被许多人阅读或修改.如果一个程序可以清晰的展现出它的结构和特征,那就能减少在以后对其进行修改时出错的可能性.编程规范可以帮助程序员们增加程序的健壮性. 所有的JavaScript代码都是暴露给公众的.所以我们更应该保证其质量.保持整洁很重要. JavaScript文件 JavaScript程序应独立保存在后缀名为.js的文件中. JavaScript代码不应该被包含在HTML文件中,除非这是段特定只属于此部分的代码.在HTML

  • 最全的Javascript编码规范(推荐)

    1.嵌入规则 Javascript程序应该尽量放在.js的文件中,需要调用的时候在页面中以<script src="filename.js">的形式包含进来.Javascript代码若不是该页面专用的,则应尽量避免在页面中直接编写Javascript代码. 2.对齐缩进与换行 a) 缩进 在同一系统中应采用同一种缩进标准,本文提倡缩进大小为4个空格.各编译器对Tab键所代替的空白大小定义不同.建议在设置开发环境时,将编辑器里的Tab快捷键重新设置成4个空格.多数编译器提供了

  • Javascript 编码约定(编码规范)

    1.使用 strict 模式 在一个作用域(包括函数作用域.全局作用域)中,可以使用 "use strict"; 来开启 strict 模式. 2.缩进 用 Tab 键进行代码缩进,以节约代码大小,使用4个空格的宽度来进行缩进(JSLint 建议). 3.符号 1) 大括号 与语句放同一行,放于最后面:仅有一行语句,也使用大括号: if (true) { //true } else { //false } while (true) { //alert(1); } 2) 空格 在逗号.分

  • VBS教程:VBScript 基础-VBScript编码约定

    VBScript编码约定编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议.编码约定包含以下内容: 对象.变量和过程的命名约定 注释约定 文本格式和缩进指南使用一致的编码约定的主要原因是使脚本或脚本集的结构和编码样式标准化,这样代码易于阅读和理解.使用好的编码约定可以使源代码明白.易读.准确,更加直观且与其他语言约定保持一致. 常数命名约定VBScript 的早期版本不允许创建用户自定义常数.如果要使用常数,则常数以变量的方

  • 通过javascript进行UTF-8编码的实现方法

    javascript的字符集: javascript程序是使用Unicode字符集编写的.Unicode是ASCII和Latin-1的超集,并支持地球上几乎所有的语言.ECMAScript3要求JavaScript必须支持Unicode2.1及后续版本,ECMAScript5则要求支持Unicode3及后续版本.所以,我们编写出来的 javascript程序,都是使用Unicode编码的. UTF-8 UTF-8(UTF8-bit Unicode Transformation Format)是一

  • VBScript教程 第十课 VBScript编码约定

    什么是编码约定? 编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议.编码约定包含以下内容: ·对象.变量和过程的命名约定 ·注释约定 ·文本格式和缩进指南 使用一致的编码约定的主要原因是使 Script 或 Script 集的结构和编码样式标准化,这样代码易于阅读和理解.使用好的编码约定可以使源代码明白.易读.准确,更加直观且与其他语言约定保持一致. 常数命名约定 VBScript 的早期版本不允许创建用户自定义常数.如果

  • Vue的编码技巧与规范使用详解

    当我们完成项目的构建,进入开发阶段的时候,除了你需要了解框架本身的知识点外,我们还需要提前掌握一些项目的编码技巧与规范,在根源上解决之后因编码缺陷而导致的项目维护困难.性能下降等常见问题,为项目多人开发提供编码的一致性. 本文将罗列项目中常用的一些编码技巧与规范来帮助大家提升代码质量,并会结合代码片段加强大家的理解与认知.当然不是所有实例都是针对 Vue.js 开发的,有些同样也适用于其他前端项目. 实例 1. 使用对象代替 if 及 switch 在很多情况下,我们经常会遇到循环判断执行赋值操

  • javascript来定义类的规范小结

    使用javascript来定义类的规范如下: 指定类名与构造函数,类名(构造函数名)首字母大写: 复制代码 代码如下: function YourClass(){ } 使用"this.成员变量"在其构造函数内定义(伪)私有成员,最好约定(伪)私有成员都以"_"开头小写字母组成.这种成员是每个对象都有自己的副本,也叫对象(实例)成员. 复制代码 代码如下: function Yourclass(_arg1,_arg2,...){ this._arg1=arg1; th

  • JavaScript常用代码书写规范的超全面总结

    一.全局命名空间污染 总是将代码包裹在一个立即的函数表达式里面,形成一个独立的模块. 不推荐 var x = 10, y = 100; console.log(window.x + ' ' + window.y); 推荐 ;(function(window){ 'use strict'; var x = 10, y = 100; console.log(window.x + ' ' + window.y); }(window)); 二.立即执行函数 在立即执行函数里面,如果有用到全局变量应该通过

  • 老生常谈javascript变量的命名规范和注释

    简单说,标识符命名规则如下: 第一个字符可以是任意Unicode字母,以及美元符号($)和下划线(_). 第二个字符及后面的字符,还可以用数字. 下面这些都是合法的标识符. arg0 _tmp $elem π 下面这些则是不合法的标识符. 1a 23 *** a+b -d 中文是合法的标识符,可以用作变量名. var 临时变量 = 1; JavaScript有一些保留字,不能用作标识符:arguments.break.case.catch.class.const.continue.debugge

  • 浅谈Linux的编码及编码转换方法

    如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换. 查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1.在Vim中可以直接查看文件编码 :set fileencoding 即可显示文件编码格式. 如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以

随机推荐