深入理解js中的return

JavaScript在事件中调用函数时用return返回值实际上是对window.event.returnvalue进行设置,而该值决定了当前操作是否继续。

  • 当返回的是true时,将继续操作。
  • 当返回是false时,将中断操作
  • 直接执行时(不用return),将默认返回undefined,不会对window.event.returnvalue进行设置,会默认地继续执行操作

    详细说明如下:
    例如:
    当在 <a href="abc.htm" onclick="return add_onclick()">Open</a>
    如果函数 add_onclick() 返回 true, 那么 页面就会打开 abc.htm
    否则, (返回 false), 那么页面不会跳转到 abc.htm, 只会执行你的 add_onclick() 函数里的内容. (add_onclick函数中控制页面转到 abc.htm除外)
    <a href="abc.htm" onclick="add_onclick()">Open</a>
    不管 add_onclick() 返回什么值, 都会在执行完 add_onclick 后打开页面 abc.htm

另外补充:
onclick事件时就相当于οnclick=”return true/false”

function check()
{
if(obj.value=="" )
   {
     window.alert("不能为空!");
     obj.focus();
     return false;
   }
     return true;
}

调用方法返回true时才提交表单,反之则不提交,这是submit按钮
调用js函数不需要return,但是表单却无法提交,所以在js函数中加上一句话
例如:

<script language="javascript">
function check()
{
if(obj.value=="" )
   {
     window.alert("不能为空!");
     obj.focus();
     return false;
   }
     document.myform.submit();
     return true;
}
</script>

注:document.myform.submit();要在return true前

return需要注意的三点:
1、函数名+()==>return后面的值;
2、所有函数都有默认返回值,为undefined;
3、return后面的任何代码都不再执行;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值