javascript中return,return true,return false三者的用法及区别


Posted in Javascript onNovember 17, 2015

1.语法及返回方式

①返回控制与函数结果

        语法为:return 表达式;

        语句结果函数的执行,返回调用函数,而且把表达式的值作为函数结果返回出去

②返回控制无函数结果

        语法为:return;

        在大多数情况下,为事件处理函数如果让其返回false,可以防止默认的事件行为.例如,默认情况下,点击一个<a>标签元素,页面会跳转到该元素href属性指定的页. 而return false就相当于终止符,return true就相当于执行符. 在js中return false的作用一般是用来取消默认动作的.比如你单击一个链接除了触发你的"onclick"事件以外还要触发一个默认事件就是执行页面的跳转.所以这时候如果你想取消对象的默认动作就可以return false来阻止它的动作.也就是说如果你想用js代码来局部改变一些数据而不引起页面其他部位的变化,那么你就应该在onclick事件代码的后面加上return false;

在js中,我们通常用return false来阻止提交表单或者继续执行下面的代码,通俗来说就是阻止执行默认的行为.

function s1(){
  if(true){
    return false;
  }
}
function s2(){
  m();
  n();
  p();
}

上面两个例子,函数s1那样写没有问题的,if函数体里返回出去false,终止函数.而在函数s2里,如果我们在m函数里返回一个return false阻止提交,但是这并不影响函数n和函数p的执行.在s2函数里调用函数m,那里面的return false对于函数s2来说,只是相当于返回值,并不能阻止函数s2的执行.return false只在当前函数有效,并不会影响其他外部函数的执行.

总结:

return true;返回正常的处理结果.

return false;返回错误的处理结果;终止处理;阻止提交表单;阻止执行默认的行为.

return;把控制权返回给页面.

2.通常函数经过一系列的处理后需要给外部返回一个值,这个值一般用return返回出去,也可以是说return是向函数返回返回值,并终止函数的运行.

关于return,要注意的是在函数里return后面的内容是不再执行的.

function a(){ 
  return 10; 
  document.write(50);//不执行 
}
a();//10

上面的例子中,"return 10;"这个时候函数a的值会等于10,并且函数下面的内容不再执行,因为下面运行函数a时输入10.

究竟需不需要return来返回值,要看函数是来做什么,如果需要让它返回一个值就写return,如果不需要它返回值,就没必须写它.

function a(b,c){
  return b+c;
}
var abc=a(5,8);
console.log(abc);//13
function a(b,c){
  document.write(b+c);
}

var abc=a(5,8);//此时页面上会输出13,但其实abc是没有值的
console.log(abc);//undefined

当然,js中的return不一定非得用在函数function中,有时候也可以用来阻止某些动作,比如表单的提交,让表单的提交事件返回false,那表单就不会提交:onsubmit="return false";

Javascript 相关文章推荐
JS禁用浏览器退格键实现思路及代码
Oct 29 Javascript
EasyUI实现第二层弹出框的方法
Mar 01 Javascript
详解javascript遍历方式
Nov 11 Javascript
js确认框confirm()用法实例详解
Jan 07 Javascript
javascript实现可键盘控制的抽奖系统
Mar 10 Javascript
Ionic实现页面下拉刷新(ion-refresher)功能代码
Jun 03 Javascript
基于jQuery实现页面搜索功能
Mar 26 Javascript
Vue数据驱动模拟实现2
Jan 11 Javascript
深入理解AngularJs-scope的脏检查(一)
Jun 19 Javascript
vue实现点击关注后及时更新列表功能
Jun 26 Javascript
vue实现自定义多选与单选的答题功能
Jul 05 Javascript
Servlet返回的数据js解析2种方法
Dec 12 Javascript
jquery表单验证需要做些什么
Nov 17 #Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 #Javascript
jquery验证手机号是否正确实例讲解
Nov 17 #Javascript
跟我学习javascript的prototype使用注意事项
Nov 17 #Javascript
js弹出对话框方式小结
Nov 17 #Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
Nov 17 #Javascript
Jquery 垂直多级手风琴菜单附源码下载
Nov 17 #Javascript
You might like
PHP删除数组中指定下标的元素方法
2018/02/03 PHP
JS backgroundImage控制
2009/05/19 Javascript
Javascript 的addEventListener()及attachEvent()区别分析
2009/05/21 Javascript
jQuery 自定义函数写法分享
2012/03/30 Javascript
用jquery的方法制作一个简单的导航栏
2014/06/23 Javascript
JS onkeypress兼容性写法详解
2016/04/27 Javascript
jQuery+Ajax实现限制查询间隔的方法
2016/06/07 Javascript
Ubuntu系统下Angularjs开发环境安装
2016/09/01 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
2016/12/30 Javascript
Vue前端开发规范整理(推荐)
2018/04/23 Javascript
swiper 自动图片无限轮播实现代码
2018/05/21 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
vue实现菜单切换功能
2019/05/08 Javascript
js变量值传到php过程详解 将php解析成数据
2019/06/26 Javascript
JavaScript 截取字符串代码实例
2019/09/05 Javascript
nodejs一个简单的文件服务器的创建方法
2019/09/13 NodeJs
vue登录注册实例详解
2019/09/14 Javascript
vue项目从node8.x升级到12.x后的问题解决
2019/10/25 Javascript
vue使用nprogress实现进度条
2019/12/09 Javascript
浅谈vue 多个变量同时赋相同值互相影响
2020/08/05 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
PYTHON 中使用 GLOBAL引发的一系列问题
2016/10/12 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
Python实现将多个空格换为一个空格.md的方法
2018/12/20 Python
利用anaconda保证64位和32位的python共存
2021/03/09 Python
Django MEDIA的配置及用法详解
2019/07/25 Python
python语言的优势是什么
2020/06/17 Python
Python QTimer实现多线程及QSS应用过程解析
2020/07/11 Python
利用python绘制正态分布曲线
2021/01/04 Python
中国双语服务优势的在线购票及活动平台:247tickets
2018/10/26 全球购物
JD Sports芬兰:英国领先的运动鞋和运动服饰零售商
2018/11/16 全球购物
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
《天安门广场》教学反思
2014/04/23 职场文书
解决vue $http的get和post请求跨域问题
2021/06/07 Vue.js