前端编码风格规范(3)—— JavaScript 规范

其他三个写的也挺好的,不过html和css我已经参照了其他的。

防污染与IIFE

(function($, w, d){
'use strict'; $(function() {
w.alert(d.querySelectorAll('div').length);
});
}(jQuery, window, document));

总是使用var来声明变量

所有的变量以及方法,应当定义在 function 内的首行。只用一个 var 关键字声明,多个变量用逗号隔开。

把赋值尽量写在变量申明中。

总是使用 === 精确的比较操作符

真假判断

false:false, 0, undefined, null, NaN, ''

true: true, 1, {}, [], '0'

逻辑操作符 || 和 && 也可被用来返回布尔值

(function(log){
'use strict';

function multiply(a, b) {

//给变量赋值

a = a || 1;

b = b || 1;

 

log('Result ' + a * b);

}

 

multiply(); // Result 1

multiply(10); // Result 10

multiply(3, NaN); // Result 3

multiply(9, 5); // Result 45

 

}(window.console.log));

总是使用分号

分号需要用在表达式的结尾,而并非函数声明的结尾

var foo = function() {
return true;
}; // semicolon here.

function foo() {

return true;

} // no semicolon here.

不能在语句块内的函数声明

// 不推荐
if (x) {
function foo() {}
} // 推荐
if (x) {
var foo = function() {};
}

如何自定义异常?

抛出对象

if(name === undefined) {
throw {
name: 'System Error',
message: 'A name should always be specified!'
}
}

闭包有什么用?关于闭包如何工作的合理解释

不在循环中创建函数或闭包

只在构造函数和对象的方法中 使用this

不要使用switch

用数组和对象字面量

禁止修改内建对象的原型链

圆括号,不要用在一元操作符上,例如 delete, typeof 和 void,或在关键字之后,例如 return, throw, case, new 等。

字符串统一使用单引号(‘)

js语言精粹

缩进2个空格

if和 ( 之间放一个空格

函数调用时,才使 ( 和前面的符号相连

除了 . 和 [ 的所有中置运算符两边都放空格

每个逗号和冒号后都使用一个空格

每行最多放一个语句

如果一行放不下,会在一个冒号或二元运算符后拆开它

以行注释为主;块注释用于正式的文档记录和注释。

把 { 放在一行的结尾,而不是下一行的开头

javascript 编码规范的更多相关文章

  1. JavaScript编码规范指南

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

  2. 【转发】网易邮箱前端技术分享之javascript编码规范

    网易邮箱前端技术分享之javascript编码规范 发布日期:2013-11-26 10:06 来源:网易邮箱前端技术中心 作者:网易邮箱 点击:533 网易邮箱是国内最早使用ajax技术的邮箱.早在 ...

  3. 网易前端JavaScript编码规范

    在多年开发邮箱webmail过程中,网易邮箱前端团队积累了不少心得体会,我们开发了很多基础js库,实现了大量前端效果组件,开发了成熟的opoa框架以及api组件,在此向大家做一些分享.今天想先和大家聊 ...

  4. JavaScript编码规范[百度]

    JavaScript编码规范 1 前言   2 代码风格   2.1 文件   2.2 结构   2.2.1 缩进   2.2.2 空格   2.2.3 换行   2.2.4 语句   2.3 命名 ...

  5. 网易邮箱前端Javascript编码规范:基础规范

    在多年开发邮箱webmail过程中,网易邮箱前端团队积累了不少心得体会,我们开发了很多基础js库,实现了大量前端效果组件,开发了成熟的opoa框架以及api组件,在此向大家做一些分享.今天想先和大家聊 ...

  6. JavaScript 编码规范(中文/Airbnb公司版)

    Airbnb 是一家位于美国旧金山的公司,本文是其内部的 JavaScript编码规范,写得比较全面,在 Github 上有 16,686 + Star,3,080 + fork,前端开发人员可参考. ...

  7. 学习一份百度的JavaScript编码规范

    JavaScript编码规范 1 前言 2 代码风格 2.1 文件 2.2 结构 2.2.1 缩进 2.2.2 空格 2.2.3 换行 2.2.4 语句 2.3 命名 2.4 注释 2.4.1 单行注 ...

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

    缩进层级 代码如何缩进通常有两种主张: 使用制表符缩进 每一个缩进层级都用单独的制表符表示.这种方法的主要缺点是:系统对制表符的解释不一致.这些差异会导致不同的开发者对同一段代码有不同的看法的,这正是 ...

  9. javascript编码规范[原创]

    一些命名规范书或js书命名规范章节,喜欢将命名规范跟语法混在一块例如: 1.使用“var”定义.初始化变量防止产生全局变量,多变量一块定义使用“,”(本身这种方式就很有争议). 2.结尾必加“;”防止 ...

  10. Javascript编码规范,好的代码从书写规范开始,增强代码的可读性,可维护性,这是相当重要的!

    1. 前言 JavaScript在百度一直有着广泛的应用,特别是在浏览器端的行为管理.本文档的目标是使JavaScript代码风格保持一致,容易被理解和被维护. 虽然本文档是针对JavaScript设 ...

随机推荐

  1. Introduction to 3D Game Programming with DirectX 11 翻译--开篇

    Direct3D 11简介 Direct3D 11是一个渲染库,用于在Windows平台上使用现代图形硬件编写高性能3D图形应用程序.Direct3D是一个windows底层库,因为它的应用程序编程接 ...

  2. oracle主键修改&设置某一字段可以为null

    1.oracle主键修改 1.1)首先查看需要修改的表的主键名,默认的情况下,数据库会自动分配 select * from user_cons_columns where table_name='表名 ...

  3. hdu2870 Largest Submatrix 单调栈

    描述 就不需要描述了... 题目传送门 题解 被lyd的书的标签给骗了(居然写了单调队列优化dp??)  看了半天没看出来哪里是单调队列dp,表示强烈谴责QAQ w x y z  可以各自 变成a , ...

  4. 一种基于URL数据源的WEB报表插件

    完全支持所见所得的报表设计, 支持 PHP ,Java 等所有支持JSON格式的后端. 立即下载测试版本 需要正式版本?请QQ联系:1565498246 或者留言

  5. python SQLAlchemy对象映射和json.dumps无法序列化问题解决

    from flask import Flask from flask_sqlalchemy import SQLAlchemy import Config2 import pymysql import ...

  6. android 打开新窗口

    ImageView loginBtn = (ImageView)findViewById(R.id.login_button); loginBtn.setOnClickListener(new Vie ...

  7. 【UI测试】--多窗口&系统资源

  8. nginx的hash

    hash结构中有若干个桶,桶内是hash(key)值相同的若干数据. 查找数据时,首先对key值进行hash计算,然后hash值对桶的个数进行求余,得到数据所在的桶.然后在桶中使用key逐个查找,直到 ...

  9. 【C#】详解C#委托

    目录结构: contents structure [+] 委托语法 泛型委托 委托链 lambda表达式 揭秘委托 类库中的委托 委托和反射 1.委托语法 本文会详细阐述委托的使用,以及实现,想必读者 ...

  10. NOIP2017提高组预赛详解

    NOIP2017预赛终于结束了. 普遍反映今年的卷子难度较大,但事实上是这样吗?马上我将为您详细地分析这张试卷,这样你就能知道到底难不难. 对了答案,鄙人考得还是太差了,只有91分. 那么下面我们就一 ...