第一部分 编程风格

程序是写给人读的,只是偶尔让计算机执行一下 ——Donald Knuth

1、逻辑之间加空行。
2、命名体现特点,小驼峰。以JS语言核心采用的代码规范为准。
3、将null当做对象的占位符,不要滥用。
4、减少continue的使用,用条件语句替代(以前很喜欢用continue)。
5、for in循环不仅遍历当前对象的属性,还会遍历原型继承而来的属性,一般使用时用hasOwnProperty方法过滤。不要将for in用来遍历数组。
6、函数先声明,再使用。(以前写c有的习惯,到了JS函数提升的机制就忽略了)且在条件语句的外部声明。
7、不要将"use strict"用在全局作用域中,这样合并文件时会把其他文件也设置为"use strict",其他文件的非"strict"代码可能会出错。

第二部分 编程实践

构建软件设计的方法有两种,一种是把软件做得很简单以至于明显找不到缺陷;
另一种是把它做得很复杂以至于找不到明显的缺陷 ——C.A.R.Hoare

1、各部分间的低耦合性。(感觉这个能涵盖以下所有)
2、通过JS修改元素样式时,最佳方法是操作CSS的className。
3、隔离应用逻辑(应用逻辑指的是和应用相关的功能性代码)。
4、尽量为函数传入有用、精确的信息。(如下)

 //不好的写法function clickHandler(event) {showMouse(event);}function showMouse(event) {console.log("x:" + event.pageX + "y:" + event.pageY);}myElement.addEventListener("click", clickHandler(event));//好的写法function clickHandler(event) {showMouse(event.pageX, event.pageY);}function showMouse(x, y) {console.log("x:" + x + "y:" + y);}myElement.addEventListener("click", clickHandler(event));

5、抛出自己的错误。
6、不要动不属于自己的对象。

第三部分 自动化

需要看更专业详细的书

转载于:https://www.cnblogs.com/ZackBee/p/6946811.html

风中的纸屑——阅读编写可维护的JavaScript相关推荐

  1. 《编写可维护的JavaScript》——1.7 直接量

    本节书摘来自异步社区<编写可维护的JavaScript>一书中的第1章,第1.7节,作者: [美]Nicholas C. Zakas 译者: 李晶 , 郭凯 , 张散集 更多章节内容可以访 ...

  2. 【读书笔记】:《编写可维护的JavaScript》第02章 注释

    编写可维护的JavaScript 第02章 注释 2.1 单行注释 2.2 多行注释 2.3 使用注释 2.4 文档注释 第02章 注释 JavaScript支持两种不同类型的注释,单行注释和多行注释 ...

  3. 编写可维护的JavaScript之避免使用全局变量

    一.避免全局变量的理由 js中避免创建全局变量一是避免命名冲突,二是避免因为创建全局变量让代码变得脆弱,三是创建全局变量会让代码难以测试. 二.避免创建全局变量的几种方法 //避免全局变量 避免命名冲 ...

  4. 《编写可维护的Javascript》学习总结

    第一部分 一.基本规范 1.缩进:一般以四个空格为一个缩进. 2.语句结尾:最好加上分号,因为虽然"自动分号插入(ASI)"机制在没有分号的位置会插入分号,但是ASI规则复杂而且会 ...

  5. 编写可维护的javascript代码---开篇(介绍自动报错的插件)

    文章开篇主要推荐了2款检测编程风格的工具: JSLint和JSHint: jsLint是由Douglas Crockford创建的.这是一个通用的javascript代码质量检测工具,最开始JSLin ...

  6. 编写可维护的javascript代码--- 2015.11.21(基本格式化)

    1.1 每行的编码需要控制在80字符. 1.2 改用:的地方必须用上. 1.3 缩进用2个制表符,不过4个也可以. 1.4 当代码一行显示不全需要折行显示,这里我暂且假定缩进为4个字符. 1.5 如果 ...

  7. 读《代码不朽:编写可维护软件的10大要则》C# 版

    这本书特别针对没有接受过计算机科学或软件工程专业学习的软件开发人员,这类人员除了熟悉所用语言语法和语义之外,很少接受其他专业培训,对软件工程中的一些概念理解欠缺.软件设计方面考虑较少.如果要成为一个专 ...

  8. Go 语言实战: 编写可维护 Go 语言代码建议

    Go 语言实战: 编写可维护 Go 语言代码建议 目录 1. 指导原则 1.1 简单性 1.2 可读性 1.3 生产力 2. 标识符 2.1 选择标识是为了清晰, 而不是简洁 2.2 标识符长度 2. ...

  9. 代码不朽——编写可维护软件的十大要则

    导读 人类到目前为止已经能够度量越来越多的东西,例如时间.长度等,但是在软件开发领域,我们依然很难去评估一个软件系统的质量,以及维护它的难易程度.可维护性越差,意味着开发成本越高.开发速度越慢,以及由 ...

  10. C++ 17 标准正式发布:终于能更简单地编写和维护代码了!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 何为 C++ 17? C++17 是继 C++14 之后,C++ 编程语言 ISO/IEC ...

最新文章

  1. 查看android keystore 别名
  2. linux系统适合电脑小白吗,linux小白说说用linux的感受
  3. 经典C语言程序100例之八零
  4. java dos窗口小工具下载,maxdos 9 3-maxdos工具箱 v9.3 官方版
  5. 计算机应用技术概括,计算机应用技术学科各学科方向简介
  6. sessionStrorage + localStorage+ cookes
  7. C# WinForm技巧“将Form嵌入到Panel”
  8. FFmpeg下载地址
  9. idea 破解版安装
  10. 四、量子纠缠状态及其应用
  11. JavaScript之promise对象及ajax的使用
  12. iOS 最新 APP提交上架流程~(打包 ipa)
  13. RK3399 ARM开发板添加中文输入法
  14. java开发微信公众号:微信公众号对接
  15. ETH持续暴雷!历史是如此的相似
  16. Python调用WPS进行文档转换PDF及PDF转图片
  17. HTML的两种盒子模型
  18. ad7714 c语言程序,基于AD7714的高精度数字化称重传感器设计.pdf
  19. python三维坐标轴单位长度_Matplotlib中三维散点图的z轴缩放和限制
  20. HTML5+CSS3小实例:炫彩的发光字特效

热门文章

  1. 【慕课网】前端零基础入门---步骤一:页面结构层HTML---01-HTML基础
  2. 神舟笔记本键盘灯不亮驱动
  3. html标签各属性之间用空格隔开对吗,03-HTML标签(二)
  4. CMMI 项目计划实战
  5. java调用百度地图api,展示世界地图
  6. 玩玩Spring之初章
  7. java六角括号怎么打_六角括号怎么打出来 六角括号输入方法
  8. 时间戳转换为年月日时分秒
  9. 是官方的-FeedDemon是炸弹
  10. 从亏损19亿到盈利6亿,恺英网络做对了什么?