标签:pre title def 特殊 dev 最好 -- type body
<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>函数类型</title> </head> <body> <script> // var myFunction=function Calc(a,b){ // return a*b; // } //函数类型 //alert(typeof myFunction) // alert(myFunction(3,5)) // myFunction(1,2) //声明函数可以赋值给函数变量 // var test=function(x,y){ // return x,y // } /** * 自定义函数 通过function关键字 function 函数名称(参数,...){ 代码段 return 返回值 * } 注意 : 函数名称不要包含特殊字符 函数名称最好含义明确 函数名称最好遵循驼峰标记法或者下划线 函数名严格区分大小写 函数名如果重复会产生覆盖 函数可以有参数也可以没有参数 .可以有一个参数也可以多个参数 函数通过return 加返回值 .如果没有return 默认值返回undefind 函数不调用不执行 匿名函数:---->函数表达式可以存储变量中,变量也可以作为一个函数使用 可以将匿名函数作为参数传递给其它函数 .接收函数就可以通过传递进来的 函数完成某些功能 可以通过匿名函数来执行某些一次性的任务 **/ // var test2 =function(x,y){ // return x*y; // } // // alert(test2(5,4)) // var tets3=test2; // alert(tets3(3,4)) //回调函数 列子 /*function Calc(x,y){ return x() + y() } function test1(){ return 3; } function test2(){ return 5; } //alert (Calc(test1,test2)) alert(Calc(function(){return 5;},function(){return 4;}));*/ /*回调函数列子2 让里面的参数*2* /*/ /*function Test2(a,b,c){ var arr=[]; for(var i=0;i<3;i++){ arr[i]=arguments[i]*2 } return arr } function plus(a){ return a+1 } var arr1=[]; arr1=Test2(10,30,40); alert(arr1); for(var i=0;i<3;i++){ arr1[i]=plus(arr1[i]); } alert(arr1)*/ //callback 回调函数 /*function tets(a,b,c,callback){ var i,arr=[]; for(i=0;i<3;i++){ arr[i]=callback(arguments[i]) } return arr } function add(a){ return a+2 } //alert(tets(3,4,5,add)) //用匿名函数调用 alert(tets(7,8,9,function(a){ return a+1; })) */ //作为回调函数调用函数 call() apply() function Calc2(a,b){ return a*b } //alert(Calc2.call(Calc2,5,10)) //用apply来调用 =,以数组的形式调用 var params=[3,4] alert(Calc2.apply(Calc2,params)) //自调用函数 --->只能执行一次 ( function(){ alert(‘this is a bb ‘) } )(); ( function(a,b){ alert(a,b) } )(3,5) </script> </body> </html>
标签:pre title def 特殊 dev 最好 -- type body
原文地址:https://www.cnblogs.com/yuanxiangguang/p/11110430.html