函数的定义和参数获取
函数:
定义函数:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <script> 7 //定义方式一 8 function abs(x){ 9 10 if(x > 0){ 11 return x; 12 }else{ 13 return -x; 14 15 } 16 } 17 //一旦执行到return代表函数结束,返回结果! 18 //如果没有执行return,函数执行完也会返回结果,结果为 undefined 19 20 // 定义方式二(前端人员一般习惯用) 21 var abs = function (x) { 22 if (typeof x!== 'number'){ 23 throw 'Not a Number'; //手动抛出异常 24 } 25 if(x > 0){ 26 return x; 27 }else{ 28 return -x; 29 30 } 31 }//匿名函数,可以把结果赋值给abs,通过abs()可以调用函数 32 33 // 调用函数 34 // abs(10) 35 // abs(-10,123,123,123); js可以传任意个参数,也可以不传递参数 36 // 参数进来是否存在问题?假设不存在参数, 37 38 // arguments代表传递进来的参数是一个数组 39 var abn = function (x) { 40 for (let i = 0; i< arguments.length; i++) { 41 console.log(arguments[i]); 42 } 43 if(x > 0){ 44 return x; 45 }else{ 46 return -x; 47 48 } 49 } 50 // 问题:arguments包含多有的参数,有时候想使用多余的参数进行附加操作。需要排除已有参数 51 52 //rest ES6新特性:除了已经定义的参数之外的所有参数 53 function bb( a , b, ...rest) {//rest参数只能写在最后面,必须用...标识 54 console.log("a==="+a); 55 console.log("b==="+b); 56 // if (arguments.length>2){ 57 // for (var i = 2; i<arguments.length;i++){ 58 // 59 // } 60 // } 61 console.log(rest); 62 63 } 64 65 66 </script> 67 68 </head> 69 <body> 70 71 </body> 72 </html>