js 把函数作为参数传递给另一个方法

正常传方法不带参数的不做讨论了,看一下方法带参数的

例如:

[javascript] view plain copy
  1. $(function(){  
  2.               
  3.           
  4.             test1(test3('22'));  
  5.               
  6.         })  
  7.         function test1(Func)  
  8.         {  
  9.             //Func(value)  
  10.         }  
  11.         function test3(data)  
  12.         {  
  13.             alert(data);  
  14.         }  
  15.           
上述代码执行后会直接弹出‘22’,因为test3(‘22’)传过去就直接执行了,而不是作为参数传过去。

解决方法两种 :1:使用匿名函数

[javascript] view plain copy
  1. $(function(){  
  2.               
  3.           
  4.             test1(function(){  
  5.                 test3('22')  
  6.                   
  7.             });  
  8.               
  9.         })  
  10.         function test1(Func)  
  11.         {  
  12.             Func()  
  13.         }  
  14.         function test3(data)  
  15.         {  
  16.             alert(data);  
  17.         }  

               2:将方法和参数分开

[javascript] view plain copy
  1. $(function(){  
  2.               
  3.           
  4.             test1('22',test3);  
  5.               
  6.         })  
  7.         function test1(value,Func)  
  8.         {  
  9.             Func(value)  
  10.         }  
  11.         function test3(data)  
  12.         {  
  13.             alert(data);  
  14.         } 
  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值