1 换行保持两个缩进(通常是一行太长)

运算符前后加一个空格,包括赋值运算符和逻辑运算符

括号运算符,左括号之后,右括号之前不应该有空格

段代码无关,添加空行

命名驼峰式,一般首字母小写,其他单词首字母大写。

2 for.. in.. 中 应该用 hasOwnProperty()方法过滤原型所包含的方法(若不需要)

3 应用逻辑与事件处理分离开来 。(就是把点击事件和里面的功能逻辑变成方法分开出来)

4 不要无限分发event,阻止默认和冒泡事件(就是不要把点击事件里面的event参数,传给多个子函数,传需要的属性即可)

5 null 不用于检测是否为空,typeof 检测四种原类型(除了null), instanceof 检测引用类型。

6 IE8之前,Dom 对象不是继承Object,所以不包括hasOwnProperty方法

7 抽离配置数据(把一些固定的数据,分离成某个文件或者某个模块)

8 抛出自定义错误(适当的给自己增加一些错误提示)

9 不是自己写的对象,不要进行改动。

10 对于一些对象,可以做一个门面,即不改变原接口,创造一个新的接口去使用它。

11 一个文件一个对象,相关文件一个目录。

javascript 编程风格 部分精要的更多相关文章

  1. Javascript编程风格

    Douglas Crockford是Javascript权威,Json格式就是他的发明. 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程风格是什么.我非常推荐这个演讲,它 ...

  2. 浅谈前端JavaScript编程风格

    前言 多家公司和组织已经公开了它们的风格规范,详细可參阅jscs.info,以下的内容主要參考了Airbnb的JavaScript风格规范.当然还有google的编程建议等编程风格 本章探讨怎样使用E ...

  3. javascript编程风格(粗略笔记)

    1.空格 紧凑型: project.MyClass = function(arg1, arg2){ 松散型: for( i = 0; i < length; i++ ){ 2.代码行长度 最多8 ...

  4. JavaScript编程风格--基本的格式化

    缩进层级     推荐4个空格字符作为一个缩进层级. 语句结尾     推荐不要省略分号. 行的长度     最好一行不超过80个字符. 换行     在运算符后换行,下一行增加两个层级的缩进.   ...

  5. 学习Javascript的编程风格

    Javascript编程风格   Douglas Crockford是Javascript权威,Json格式就是他的发明. 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程 ...

  6. 【荐】JavaScript编码风格

    作者:阮一峰 Douglas Crockford是 JavaScript 权威,Json 格式就是他的发明. 去年 11 月他有一个演讲(Youtube),谈到了好的 JavaScript 编程风格是 ...

  7. Dojo Javascript 编程规范(转)

    前言 相当不错的 Javascript 编程风格规范,建议大家采用此规范编写 Javascript.原文链接: http://dojotoolkit.org/developer/StyleGuide ...

  8. JavaScript八张思维导图—编程风格

    JS基本概念 JS操作符 JS基本语句 JS数组用法 Date用法 JS字符串用法 JS编程风格 JS编程实践 不知不觉做前端已经五年多了,无论是从最初的jQuery还是现在火热的Angular,Vu ...

  9. 编写可维护的JavaScript之编程风格

    在团队中只有每个人的编程风格一致,大家才能方便的互相看懂和维护对方的代码. 1. 层级缩进 对于层级缩进目前有两种主张:1)使用制表符这种方法有两种好处,第一,制表符和缩进层级之间是一一对应关系,符合 ...

随机推荐

  1. [转】Python--遍历列表时删除元素的正确做法

    转自:https://blog.csdn.net/cckavin/article/details/83618306   一.问题描述 这是在工作中遇到的一段代码,原理大概和下面类似(判断某一个元素是否 ...

  2. MSYS 编译 nginx rtmp-module

    1. 下载源码 http://hg.nginx.org/nginx nginx-c74904a17021.zip https://github.com/arut/nginx-rtmp-module n ...

  3. Rollup.js 实践

    音乐分享: B.o.B Ft. Marko Penn - <Roll up> ——————————————————————————————————————————————————————— ...

  4. Elasticsearch一些使用笔记(持续更新)

    这篇博客记录这一些运维ES的一些经验. 1.节点磁盘使用率过高,导致ES集群shard无法分配,丢失数据? 有两个配置,分配副本的时候 参数名称 默认值 含义 cluster.routing.allo ...

  5. cocos2dx 开启控制台

    打开 SimulatorWin.cpp 把这句启用: #define SIMULATOR_WITH_CONSOLE_AND_MENU 1 这句本来因为#define隐藏了

  6. Js获取客户端用户Ip地址

    利用搜狐查询接口查询Ip地址: <!DOCTYPE html> <html> <head> <meta charset="utf-8" / ...

  7. deepin(debian)下使用Git

    Github github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开. 安装git 安装 sudo apt-get install g ...

  8. P4098 [HEOI2013]ALO

    最近这个家伙去哪了,为啥一直不更博客了呢?原来他被老师逼迫去补了一周的文化课,以至于不会把班里的平均分拉掉太多.好了,我们来看下面这道题目: P4098 [HEOI2013]ALO 题目描述 Welc ...

  9. centos上网络服务起不来network.service failed

    前言:今天在开虚拟机,额,,,crt连不上虚拟机了,ping不通,说明虚拟机网卡挂了,去后台看下 发现报错: Job for network.service failed because the  c ...

  10. 关于Python 解包,你需要知道的一切

    解包在英文里叫做 Unpacking,就是将容器里面的元素逐个取出来(防杠精:此处描述并不严谨,因为容器中的元素并没有发生改变)放在其它地方,好比你老婆去菜市场买了一袋苹果回来分别发给家里的每个成员, ...