10、控制语句---if语句 10_1:if-else语句 if(表达式){ 语句1; 。。。。 }else{ 语句1; 。。。。 }; 示例: var a = 1; if (a > 0){ alert("a大于0") }else { alert("a小于0") } 10_2、if-else if--elsey语句 if(表达式){ 语句1; 。。。。 }else if(表达式){ 语句1; 。。。。 }else{ 语句1; 。。。。 } 11、控制语句switch switch(表达式){ case 值1: 语句1; break; case 值2: 语句2; break; case 值3: 语句3; break; default: 语句4; } 12、循环语句---for循环表达式1 var l = [1,"2","a"] for (var i in a){ console.log(i); 这里的i是id,而不是值 console.log(a[i]); } 循环语句--for循环表达式2 for (var a = 1;i <= 10;i++){ alert(i) } 13、循环语句--while语句 while (表达式){ 语句1 。。。。。。 } 14、异常处理 try{ } catch(e){ } finally{ } 15、javascript的对象类型 ECMAscript Dom BOM ToString():返回对象的元是字符串表示 ValueOf():返回最后该对象的原始值,对于许多对象,该方法返回的值都与ToString相同 一共有11个内置对象 Array String:字符串对象 var s = new String("hello"),定义一个字符串的对象 Date:时间对象 Math Boolean:布尔值对象 Number:数字对象 Function:函数对象 Global Error:错误对象 RegExp:正则表达式的对象 Object:原生的类的对象 16、重点讲一下function对象 1、创建函数的方式1,也可以有返回值 function test_func() { alert(123) return "aaaa" } var res = test_func() alert(res) 2、创建函数的方式2,这种方式没有大括号,这种方法不要使用就可以了 var test_func = new Function ("参数1","参数2","参数n","函数体"); 3、函数的特性 3_1、length特性 function test_func(a,b,c) { alert(123) return "aaaa" } var res = test_func(1,2,3) alert(test_func.length) 这个length的值是函数的参数的个数 3_2、函数内部定义的变量是局部变量,在函数外部是不能使用的 function func1() { var a = 1; } func1() alert(a) 这里在函数外部打印函数内部的变量是会报错的 function func1() { var a; alert(a) } func1() 这里在函数内部没有对a赋值,也是可以打印的,javascript会给a赋值为undefined javastript如果在定义函数的时候只有2个形参,而在调用函数的时候传递了超过2个 的实参,这样的形式在javascript中不会报错的 function func1(a,b) { var ret = a + b; alert(ret) } func1(1,2,3) 这里的a会赋值给1,b会赋值给2,得到的结果是3 arguments这个javascript默认定义好的对象,我们看下下面的例子 function test() { alert(arguments.length); console.log(arguments); } test("a","b","c","d") alert(arguments.length); 这一句返回的时候实参的个数,这里也就是4 console.log(arguments);这一句返回一个auguments对象,他的内容是一个数组 内容如下 0:a 1:b 2:c 3:d 看下一个例子,实现自动去匹配函数的实参,然后根据实参的个数自动去累加 var ret = 0 function test() { alert(arguments.length); for (var i in arguments){ ret = ret + arguments[i]; } return ret } alert(test(1,2,3,4,2345)) 可以通过argument.length去判断参数的个数,如果不对,则抛出错误 var ret = 0 function test() { alert(arguments.length); if (arguments.length != 2){ throw new Error("参数的个数不正确") } for (var i in arguments){ ret = ret + arguments[i]; } return ret } alert(test(1,2,3,4,2345)) 5、匿名函数,这个虽然没有给函数取名字,但是把函数地址赋值给变量func,可以通过func执行函数 var func = function (){ 语句 } 6、自执行函数,定义一个函数,然后在函数后加一个括号,直接执行函数就可以了,非常节省资源 (function(arg){ 语句 } )("123")