<script>
function x(a,b){
return a(b);
}
function a(b){
return b+10;
}
var c=x(a,20); //结果是30.
alert(c);
</script>
问以下各位大神这为什么是30?我不是特别明白,哪位大神给我讲讲这个函数是如何运行才会得到30的,越详细越好,谢谢!
关于js里的function函数是如何运行的
答案:2 悬赏:70 手机版
解决时间 2021-01-31 05:46
- 提问者网友:趣果有间
- 2021-01-30 19:25
最佳答案
- 五星知识达人网友:酒醒三更
- 2021-01-30 20:23
为了避免混淆改下变量名:
function foo(func, val) {
return func(val);
}
function bar(val) {
return val + 10;
}
console.log( foo(bar, 20) ); //30首先执行foo(bar, 20), foo有参数func和val, 于是func的值是bar, val的值是20
然后foo里会执行func(val), 于是实际上是bar(20), 于是返回30
然后foo再把func(val)的返回值返回, 也就是30
function foo(func, val) {
return func(val);
}
function bar(val) {
return val + 10;
}
console.log( foo(bar, 20) ); //30首先执行foo(bar, 20), foo有参数func和val, 于是func的值是bar, val的值是20
然后foo里会执行func(val), 于是实际上是bar(20), 于是返回30
然后foo再把func(val)的返回值返回, 也就是30
全部回答
- 1楼网友:风格不统一
- 2021-01-30 21:23
如果是jquery的话,就是类似这样的写法
$("a").click(function(){
$(this)
});
然后你可以给超链接id来获取对象,并判断。
如果用js的话,也是类似的思路。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯