1、所有的<script>元素都会按照他们在页面出现的顺序依次加载解析,也就是在解析完前面一个<script>元素之后,才开始解析下一个元素;
2、js语句以一个分号来结束,可以省略,建议不要省略;
3、var a; 变量可以用来保存任何值,没有初始化时,默认保存一个特殊值——undefined;
null 表示一个空对象指针,使用typeof操作符检测null值时会返回object,如果定义的变量准备用来保存对象,最好初始化为null
4、在函数中变量没有使用var定义时,该变量在使用时变为全局变量(不推荐使用,难以维护);
5、检测变量的类型 typeof , typeof (a)// 返回a的类型(typeof不是一个函数),或者 typeof a;
6、永远不要测试每个特定的浮点数值,例如:
var a = 0.2;
var b = 0.1;
//0.1加上0.2的结果不是0.3,而是0.30000000000000004 (最高保留17位小数)
if (a + b == 0.3){//不要做这样的测试
alert("yes");
}
7、五种基本数据类型 undefined、 null、 Boolean、 Number、 String ,按值访问;
引用类型的值时按引用访问的(实际操作的是对象的引用,而不是实际的对象);
对于引用类型的值,我们可以为其添加属性和方法,基本类型的值是不可以的;
8、基本数据类型复制之后,会创建一个新值;引用类型数据复制只是复制了引用指针,指向了同一个值;
9、函数参数传递:基本数据类型是值传递,引用数据类型是引用传递;
10、检测基本类型:typeof——返回具体的类型
检测引用类型:instanceof——返回true or false
11、创建Objec实例方式:
1)
var person = new Object();
person.name = 'nnn';
person.age = 22;
2)
var person = {
name : 'nnn',
age : 29
}
12、Array类型
var color = new Array();
pop();移除最后一个元素
push();添加到最后
shift();移除数组的第一个元素
slice();截取
splice();增加 删除 替换’
indexOf();
13、迭代方法(数组):
every();//
filter();//返回符合条件的item组成的数组
forEach();//对每一项进行操作,没有返回值
map();//对每一项进行操作,返回一个数组
some();
14 Function
函数是对象,函数名是指针;
没有重载,函数名相同,后面的函数会覆盖前面的函数
15、只访问函数的指针而不执行函数,必须去掉函数名后面的括号();