《Javascript模式》笔记
一.简介
模式:在软件开发过程当中,模式一般指的是一个通用问题的解决方案,它提供了一个更好的实践经验、有用的抽象化表示和解决一类问题的模板。
JS是一门面向对象的语言,我们需要记住对象有两种类型:
1.原生对象:指在ES标准中有详细的描述,包括内置对象(Number、Boolean、Array)和用户自定义对象
2.主机对象:指在主机环境中定义的对象,包括Windows对象(window.~)和DOM对象(document.~ 、HTML的DOM节点.~)
ES的未来计划中将只允许使用strict模式,设立严格模式的目的:
- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;
- 消除代码运行的一些不安全之处,保证代码运行的安全;
- 提高编译器效率,增加运行速度;
- 为未来新版本的Javascript做好铺垫。
二.基本技巧
尽量少用全局变量
获取全局对象的方法:var global = (function(){ return this;}())
function(){
var a=b=0;//a是局部变量,b是未经声明的全局变量
}
JS中的变量提升:JS允许在函数的任意地方声明多个变量,无论在哪里声明,效果都等同于在函数的顶部进行声明
好的for循环模式是将已经遍历过的数组的长度缓存起来
使用正常的for循环来处理数组,使用for-in循环来处理对象
避免使用隐式类型转换,善用===与!==
避免使用eval()
命名约定:
构造函数的首字母大写 : var adam = new Person();
构造函数可使用大驼峰式命名法,如MyConstructor()
函数和方法名可使用小驼峰式,如myFunction()
精确的常量:var PI=3.14,MAX_WIDTH=800;
私有函数和方法前加下划线:_getFirst():function(){}
私有变量后加下划线:name_