第一章 JavaScript基础篇
缩略标记
- 对象
1 | var car = new Object(); |
👇
1 | var car = { |
- 数组
1 | var arrayN = new Array('Transformers', 'Transformers2', 'Avatar', 'Indiana Jones4'); |
👇
1 | var arrayN = ['Transformers', 'Transformers2', 'Avatar', 'Indiana Jones4']; |
- 三重标记
1 | var direction; |
👇
1 | var direction = x < 200 ? 1 : -1; |
JSON 数据格式
JSON 是 JavaScript Object Notation的缩写,使用JSON可以更方便的存储数据
示例
1 | var band = { |
JavaScript自带函数(数学,数组以及字符串函数)
自带的函数可以帮我们省略n多代码。
举例如 sort(), Math.max(), split(), join()
事件代理
当某一特定的元素或者其上DOM层的所有元素发生某一事件时,可以通过单一的处理程序对父元素进行处理来简化事件处理过程,而不是使用大量的程序。
匿名函数和模块模式
为了减少无用的全局变量,通常的解决办法就是创建匿名函数
1 | var name = "Chris"; |
👇
匿名函数myApplication
1 | var myApplication = function(){ |
👇
外部可调用时
1 | var myApplication = function(){ |
👇
揭示模块模式(更方便)
1 | var myApplication = function(){ |
允许配置
编程的最后阶段,为了使代码易于被其他开发人员使用和更改,添加配置功能,如
- CSS和ID名称
- 生成的字符串
- 数据
- 地点,语言等
与后台交互
Ajax + JSON-P
库文件
YUI, jQuery, Dojo
第二章 复查JavaScript代码的启示
简介
复查可以帮助开发者发现各种错误,学习更多经验,更好的维护编码标准。
哪里可以复查?
- JSMentors
- freenode IRC
- Code Review
- GitHub
构造复查请求
找到有经验的人员
- 隔离出复查代码,确保其可运行级有完整的注释
- 使复查者能够查看演示更改代码
- 不要提交全部项目文件
- 标出可以改进的地方
- 有耐心
代码复查人员需要提供的信息
- 复查代码应提供的内容
- 正确性
- 功能复杂性
- 目标一致性
- 代码可维护性
- 可扩缩性
- 维持编码风格
- 复查者守则
- 清晰的评论
- 提出不足
- 提供内容的详细资料
- 给出解决方案
协作代码复查
七步测试法
问题的关键不在于你
不要仅及于你或客户开发,为使用你产品的用户开发,删减不可维护臃肿的内容,创建易于使用,便于维护的产品。
七步测试法介绍
- 关闭JavaScript
网页是否能正常显示,功能是否能够实现(解决方案: 利用JavaScript为文件添加类,然后让所有的CSS依附于这个类) - 怎样改变外观、感受和内容
尽量不将外观,文字等元素写入到JavaScript文档中。 - 最终产品的可用性和语义性
- 基本原理
- 与其他语言的交互性
- 维护人员是否专注
- 测试方案,升级维护是否简单易行
JavaScript十个古怪之处和秘密
数据类型及定义
- NULL是一个对象,但不能看作对象的实例,因为它什么也没有。
- NaN是一个数字
- 空数组==FALSE