您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页JS参数使用带参数的方法

JS参数使用带参数的方法

来源:爱站旅游
JS参数使⽤带参数的⽅法

⼤家都知道,在JS之中,⼀个变量的⽣命周期不是以⼤括号为界限的,所以即使是使⽤在循环或判断中的变量,外部也可以使⽤。可如果我们在循环或变量中使⽤了⽅法,⽽且这个⽅法使⽤了循环中的变量,那么后⾯的代码是可以修改这个变量的值的,⽽不是,将值的内容完全写死在了循环⾥⾯的⽅法中。那么解决这个问题的⼀种⽅法就是,将⽅法写出来,接收⼀个参数就可以了。

可是,在JS中传递的参数如果是⽅法,那么后⾯不能加上⼩括号,如果加上的话,就认为是调⽤了这个⽅法,会⽴即执⾏,这样⼀来,就更别说是传递参数了,那么如果解决这个问题呢?错误的代码:

1 window.onload = function() {2 function fun(x) {3 alert(x); 4 }

5 $(\"#btn\").click(fun(5));6 }

其实啊,如果你以前是这样写的,那么就说你对这个原理还不清楚!

click()⽅法接收的是⼀个参数,就像JAVA⼀个,你完全可以写⼀个⽅法进去,然后click()得到的参数就是这个⽅法的返回值。所以,如果想要传递⼀个⽅法进去,只需要在你调⽤的⽅法那⾥加上⼀个return function(){}就可以了,当然这个⽅法也是可以带参数的。这样⼀来,这个⽅法就会返回⼀个⽅法。你只需要将你想要的代码写在return的⽅法⾥⾯就可以了。正确的代码:

1 $(document).ready(function() { 2 function method(a) { 3 return function() { 4 fun(a); 5 } 6 }

7 function fun(num) { 8 alert(num); 9 }

10 function() {

11 $(\"btn\").click(method(x));12 }13 });

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务