变量

声明变量必须加上 var 关键字.
 

常量

常量的形式如: NAMES_LIKE_THIS, 即使用大写字符, 并用下划线分隔. 你也可用 @const 标记来指明它是一个常量. 但请永远不要使用 const 关键词.
 

分号

总是使用分号.
 

嵌套函数

可以使用
 

块内函数声明

不要在块内声明一个函数
 

异常

可以
 

自定义异常

可以
 

标准特性

总是优于非标准特性.
 

封装基本类型

不要
 

多级原型结构

不是首选
 

方法定义

Foo.prototype.bar = function() { ... };
 

闭包

可以, 但小心使用.
 

eval()

只用于解析序列化串 (如: 解析 RPC 响应)
 

with() {}

不要使用
 

this

仅在对象构造器, 方法, 闭包中使用.
 

for-in 循环

只用于 object/map/hash 的遍历
 

关联数组

永远不要使用 Array 作为 map/hash/associative 数组.
 

多行字符串

不要使用
 

Array 和 Object 直接量

使用
 

修改内置对象的原型

不要
 

IE下的条件注释

不要使用
 

JavaScript 编码风格

命名

通常, 使用 functionNamesLikeThisvariableNamesLikeThisClassNamesLikeThisEnumNamesLikeThismethodNamesLikeThis, 和 SYMBOLIC_CONSTANTS_LIKE_THIS.

展开见细节.

 

自定义 toString() 方法

应该总是成功调用且不要抛异常.
 

延迟初始化

可以
 

明确作用域

任何时候都需要
 

代码格式化

展开见详细描述.
 

括号

只在需要的时候使用
 

字符串

使用 ' 优于 "
 

可见性 (私有域和保护域)

推荐使用 JSDoc 中的两个标记: @private 和 @protected
 

JavaScript 类型

强烈建议你去使用编译器.
 

注释

使用 JSDoc
 

编译

推荐使用
 

Tips and Tricks

JavaScript 小技巧
 

Parting Words

保持一致性.

当你在编辑代码之前, 先花一些时间查看一下现有代码的风格. 如果他们给算术运算符添加了空格, 你也应该添加. 如果他们的注释使用一个个星号盒子, 那么也请你使用这种方式.

代码风格中一个关键点是整理一份常用词汇表, 开发者认同它并且遵循, 这样在代码中就能统一表述. 我们在这提出了一些全局上的风格规则, 但也要考虑自身情况形成自己的代码风格. 但如果你添加的代码和现有的代码有很大的区别, 这就让阅读者感到很不和谐. 所以, 避免这种情况的发生.

Google JavaScript 语言规范的更多相关文章

  1. JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}

    Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...

  2. JavaScript编码规范指南

    前言 本文摘自Google JavaScript编码规范指南,截取了其中比较容易理解与遵循的点作为团队的JavaScript编码规范. JavaScript 语言规范 变量 声明变量必须加上 var  ...

  3. Google JavaScript代码风格指南

    Google JavaScript代码风格指南 修正版本 2.28 Aaron Whyte Bob Jervis Dan Pupius Eric Arvidsson Fritz Schneider R ...

  4. electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...

  5. google的python语言规范

    Python语言规范   Lint Tip 对你的代码运行pylint 定义: pylint是一个在Python源代码中查找bug的工具. 对于C和C++这样的不那么动态的(译者注: 原文是less ...

  6. Python 语言规范(Google)

    Python语言规范 Lint tip 对你的代码运行pylint 定义: pylint是一个在Python源代码中查找bug的工具. 对于C和C++这样的不那么动态的(译者注: 原文是less dy ...

  7. google 谷歌Python语言规范

    Python语言规范 https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_lan ...

  8. 《编写可维护的JavaScript》——JavaScript编码规范(五)

    语句和表达式 在JavaScript中,诸如if和for之类的语句有两种写法,使用花括号的多行代码或者不使用花括号的单行代码.比如: //不好的写法,尽管这是合法的JavaScript代码 if (c ...

  9. 资料推荐--Google Java编码规范

    之前已经推荐过Google的Java编码规范英文版了: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 虽然这篇文章的 ...

随机推荐

  1. blender2.7.4安装three.js插件

    将three.js-master\utils\exporters\blender\addons 下面的io_three文件夹,拷贝到blender安装目录:blender-2.74-windows64 ...

  2. Jsonp和java操作例子

    介绍JSONP之前,先简单的介绍一些JSON.JSON是JavaScript Object Notation的缩写,是一种轻量的.可读的基于文本的数据交换开放标准.源于JavsScript编程语言中对 ...

  3. mysql的text类型长度问题

    在我的概念中,mysql中的text字段应该是没有长度限制的,但是今天事实告诉我,text类型的长度是有限制的.其中mysql的text类型有64K长度限制的,MEDIUMTEXT中型是2G,LONG ...

  4. hbm.xml支持的类型

  5. Effective java笔记5--通用程序设计

    一.将局部变量的作用域最小化      本条目与前面(使类和成员的可访问能力最小化)本质上是类似的.将局部变量的作用域最小化,可以增加代码的可读性和可维护性,并降低出错的可能性. 使一个局部变量的作用 ...

  6. Delphi RxRichEdit高级操作

    unit InsertRichEditUnit;interfaceuses  Windows, Messages, SysUtils, Classes, Graphics, Controls, For ...

  7. python在linux上的GUI无法弹出界面

    在进行python写GUI程序的时候,使用Tkinter,发现无法执行程序,报错如下: X connection to localhost:10.0 broken(explicit kill or s ...

  8. CentOS7 安装 scala 2.11.1

    wget http://downloads.typesafe.com/scala/2.11.6/scala-2.11.6.tgz?_ga=1.61986863.2013247204.144801902 ...

  9. F#相关图书推荐

    C#与F#编程实践 作      者 [捷] Tomas Petricek,[英] Jon Skeet 著:贾洪峰 译 出 版 社 清华大学出版社 出版时间 2011-10-01 版      次 1 ...

  10. 【c_prime_plus】第十七章笔记

    抽象数据类型(ADT) 为类型的属性和可对类型执行的操作提供一个抽象的描述,这个米阿叔不受任何实现的约束,甚至不受任何特定编程语言的约束,这样一种正式的抽象描述被称为抽象数据类型. 开一个实现该ADT ...