昏黄烛火轻摇晃 2017-08-25 03:18 采纳率: 61.5%
浏览 992
已采纳

js函数调用问题 新手求解

JS行内调用为什么fn要加括号?不加括号是表示整个函数那么在onblur的时候会调用这整个函数,那么加括号执行这个函数没有返回值不是会返回undefined么?

 <input type="text" onBlur="fn()" id="ip">
<script>
    var ip=document.getElementById("ip");
    ip.onblur=fn; //不加括号
    function fn(){
        alert(1);
    }
</script>
  • 写回答

6条回答 默认 最新

  • 斯洛文尼亚旅游 2017-08-25 03:42
    关注
     <input type="text" onblur="fn()" id="ip">
    这样等价于下面的,所以要加(),执行onblur的时候执行fn函数,不加()就不会执行fn了,也不报错
    ip.onblur=function(){fn()}
    
    ip.onblur=fn注册onblur事件,不能加(),加()就是执行fn将返回值作为onblur的处理函数了
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?