1.命名规范
变量名,名词作为前缀 例:count , myName
常量,初始化后就不能改变,命名使用大写字母和下划线结合命名 例:MAX_COUNT URL
函数名,动词作为前缀 例:getCount , isFound
构造函数,采用大驼峰,以大写字为开头。多数是名词,因为它是用来创建某个类型的实例 例:Person
2.null
适合使用null场景:
a>用来初始化一个变量,这个变量可能赋值为一个对象 。 例:var person = null
b>用来和一个已经初始化的变量比较,这个变量可以是也可以不是一个对象。 例:
var preson = get preson(); if(preson !== null){ doSomeing(); }
c>当函数的参数期望是对象时,用作参数传入。
d>当函数的返回值期望是对象时,用作返回值传出。
不适合使用null的场景:
a>不要使用null 来检测是否传入了某个参数。例:
function something(arg1, arg2 ,arg3){ if( arg3 != null){ ..... } }
b>不要用null来检测一个未初始化的变量
3.for-in 循环用来遍历对象属性的。不仅遍历对象的实例属性还会遍历从原型继承来的属性。 可以通过hasOwnProperty()方法来过滤出实例属性。
4.eval()的参数是一个字符串,它会将传入的字符串当做代码来执行。 例:
var count = 0; var number = eval("5 + count "); console.log(count ) ; //15