341 Javascript中的Return、Return false、Return true、return 变量 【转】
return false:阻止默认行为,取消事件冒泡,以及停止回调执行,立即返回。
return false:返回错误的处理结果,终止处理,阻止提交表单,阻止执行默认的行为。
1. Javascript的返回值
Javascript中的返回值总共分为四类:
return;
return false;
return true;
return variable(变量);
这四种返回值其实有很大的不同,下面主要对这四种情况进行介绍。
2. return
首先介绍return;
直接用代码来说明,先看下面的代码:
var i=(function(){return;})();
alert(i); // undefined
注意:在Javascript中函数都有返回值,默认的函数返回值为undefined。
function(){return;}为匿名函数,(function(){return;})可以看做是匿名函数的名字,类似于add()中的add,后面的()表示执行这个匿名函数,类似于执行add()函数。i为匿名函数function(){return;}的返回值。
上面的代码等价于:
var i = (function() {})();
alert(i);
等价于:
var i = (function() {
return undefined
})();
alert(i);
运行alert(i)的输出结果为undefined。从代码输出结果可以看出,return;的主要作用是阻止函数继续执行,直接返回undefined。
注:在Javascript中undefined == null,注意与=的区别。
3. return false
return false的介绍还是直接上代码:
var i = (function() {
return false;
})();
alert(i); // false
Javascript中false == '',false == 0,false == '0'。
正常情况下,return false是返回一个布尔值,也可以阻止函数继续执行。
但在事件函数中,return false表示不执行事件的响应函数。
例如,浏览器中浏览页面时点击一个button,button响应函数中有return false,这意味着当点击button时,不进行click事件的响应。
let btn1 = document.querySelector('.btn1')
btn1.onclick = function() {
console.log(111); // 111
return false;
console.log(222); // 不执行
}
btn1.onclick = function () {
console.log(111); // 111
return console.log(222); // 222,执行
}
4. return true
return true的介绍也是上代码:
var i = (function() {
return true;
})();
alert(i); // true
Javascript中true == 1,true == '1'。
正常情况下,return true是返回一个布尔值,也可以阻止函数继续执行。
但在事件函数中,return true不起任何作用,响应函数会继续执行。
let btn2 = document.querySelector('.btn2')
btn2.onclick = function() {
console.log(333); // 333
return true;
console.log(444); // 不执行
}
5. return variable
return variable主要是在Javascript中定义一个变量,在函数中进行返回,与通常的返回变量没有区别。
总结:在JS文件中编写响应函数时,如果要返回true或false,还是定义变量返回吧。