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

简介: return其实就是return undefined;1.语法及返回方式①返回控制与函数结果        语法为:return 表达式;        语句结果函数的执行,返回调用函数,而且把表达式的值作为函数结果返回出去②返回控制无函数结果        语法为:return;        在大多数情况下,为事件处理函数如果让其返回false,可以防止默认的事件行为.

return其实就是return undefined;

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";

 

3校验时比较常用

<html>

<head>

<title>return验证测试</title>

<script language="javascript">

function Login_Click(){

if(document.form1.UsName.value==""){

   alert('用户名为空');

   return;

}

if(document.form1.UsPwd.value==""){  

  alert('密码为空');

  return;

}

alert('登陆成功');

}

</script>

</head>

<body>

<form name="form1">

<input type="text" name="UsName" >用户名

<input type="password" name="UsPwd">密码

<input type="button" name="Login" onClick="Login_Click();" >登陆

</form>

</body>

</html>

不加return的现象是先提示用户名没输入,然后提示密码没输入;加了return之后遇到一个没输入之后就不再继续检测

 

相关文章
|
1月前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
26 1
|
1月前
|
JavaScript 前端开发
JS中的构造函数的含义和用法
构造函数是JavaScript中用于创建新对象的特殊函数,通常首字母大写。通过`new`关键字调用构造函数,可以初始化具有相同属性和方法的对象实例,从而实现代码复用。例如,定义一个`Person`构造函数,可以通过传入不同的参数创建多个`Person`对象,每个对象都有自己的属性值。此外,构造函数还可以包含方法,使每个实例都能执行特定的操作。构造函数的静态属性仅能通过构造函数本身访问。ES6引入了`class`语法糖,简化了类的定义和实例化过程。
27 1
|
1月前
|
设计模式 JavaScript 前端开发
js中new和object.creat区别
【10月更文挑战第29天】`new` 关键字和 `Object.create()` 方法在创建对象的方式、原型链继承、属性初始化以及适用场景等方面都存在差异。在实际开发中,需要根据具体的需求和设计模式来选择合适的方法来创建对象。
|
2月前
|
JavaScript 前端开发
JS try catch用法:异常处理
【10月更文挑战第12天】try/catch` 是 JavaScript 中非常重要的一个特性,它可以帮助我们更好地处理程序中的异常情况,提高程序的可靠性和稳定性。
28 1
|
2月前
|
JavaScript 前端开发
js的math.max的用法
js的math.max的用法
53 6
|
2月前
|
存储 JavaScript 前端开发
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
JavaScript 数据类型分为基本数据类型和引用数据类型。基本数据类型(如 string、number 等)具有不可变性,按值访问,存储在栈内存中。引用数据类型(如 Object、Array 等)存储在堆内存中,按引用访问,值是可变的。本文深入探讨了这两种数据类型的特性、存储方式、以及检测数据类型的两种常用方法——typeof 和 instanceof,帮助开发者更好地理解 JavaScript 内存模型和类型检测机制。
109 0
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
|
2月前
|
前端开发 JavaScript 开发者
深入理解JavaScript中的Promise:用法与最佳实践
【10月更文挑战第8天】深入理解JavaScript中的Promise:用法与最佳实践
91 0
|
1月前
|
JavaScript 前端开发
JavaScript中的原型 保姆级文章一文搞懂
本文详细解析了JavaScript中的原型概念,从构造函数、原型对象、`__proto__`属性、`constructor`属性到原型链,层层递进地解释了JavaScript如何通过原型实现继承机制。适合初学者深入理解JS面向对象编程的核心原理。
25 1
JavaScript中的原型 保姆级文章一文搞懂
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
103 2
|
26天前
JS+CSS3文章内容背景黑白切换源码
JS+CSS3文章内容背景黑白切换源码是一款基于JS+CSS3制作的简单网页文章文字内容背景颜色黑白切换效果。
17 0