javascript代码实例教程-javascript――对象的概念――函数 3 (使用技巧)

发布时间:2019-01-22 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了javascript代码实例教程-javascript――对象的概念――函数 3 (使用技巧)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。 1、回调函数:将函数A传给函数B,由函数B来执行A,则称A为回调函数。

 

 

 

 

 1         function addone(a){return  a+1;};          //定义一个回调函数

 2         function mulITiply(a,b,c,callback)         //定义一个可以调用回调函数的函数

 3         {

 4              VAR i,ar=new Array();

 5              for(i=0;i<3;i++)

 6              {

 7                   ar[i]=callback(arguments[i]*2);     //将输入参数乘以2之后作为回调函数的参数执行。

 8              }

 9              return ar;

10         }

11         var myarr=mulitiply(1,2,3,addone);

12         myarr;        //[3, 5, 7]

 

改进代码,使其可以忽略输入参数个数。将代码修改后如下:

 

 

 

 1         function addone(a){return  a+1;};          //定义一个回调函数

 2         function mulitiply(an)         //定义一个可以调用回调函数的函数

 3         {

 4              var i,ar =new Array(arguments.length-1);

 5              if (tyPEof arguments[arguments.length-1]==="function")

 6                   for(i=0;i<arguments.length-1;i++)

 7                         ar[i]=arguments[arguments.length-1](arguments[i]*2);     //将输入参数乘以2之后作为回调函数的参数执行。

 8              return ar;

 9         }

10         var myarr=mulitiply(1,2,3,addone);      //这种方式要求回调函数放在参数的最后一个

11         myarr;       //[3, 5, 7]

12         var myarr=mulitiply(1,2,3,4,addone);      //这种方式要求回调函数放在参数的最后一个

13         myarr;       //[3, 5, 7, 9]

 

 

 

 2、返回函数的函数:执行的函数返回值是一个函数引用。

 

 

 

 返回函数的函数

 1         function a()

 2         {

 3              function b()

 4              {

 5                   return &#39;B';

 6              };

 7              return b;    //返回一个函数的引用

 8         }

 9         var newfunct=a();   //获得一个函数的引用

10         typeof newfunct;   //"function"

11         newfunct();       //"B"

12         a()();   //"B";  a()表示获取一个函数的引用,a()();表示执行获取引用的函数

复制代码

 3、重写自己的函数:将一个指向函数的变量指向另一个函数实现重写。

 

 

 

 

重写函数常常用于在一个函数执行时必须完成一些初始化工作,这样以后在调用函数就不必重复执行一些不必要的操作。

 

 

 

  

 

结果如下:

 

 

1         var a=function()

2         {

3              function init(){document.writeln('进行初始化工作<br/>');};

4              function actuall(){ document.writeln('正式进行实际的操作<br/>');};

5              init();   //执行初始化工作

6              return actuall;     //返回函数引用

7         } ();    //立即运行,变量 a 指向函数actuall

复制代码

步骤分解如下:

 

在大函数内包含了两个小函数,其中 init 用于执行初始化函数,而大函数后面带了(),即大函数立即执行,首先执行了init初始化函数,再次将 actuall 函数的引用赋给了变量a,以后再调用 a 时,就只调用 actuall 函数,而不再执行 init 函数了

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! js脚本,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的javascript代码实例教程-javascript――对象的概念――函数 3 (使用技巧)全部内容,希望文章能够帮你解决javascript代码实例教程-javascript――对象的概念――函数 3 (使用技巧)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。