请考虑以下代码:
if(boolean) return;
这种情况的目的是什么?
它在逻辑上是否与:
相同if(boolean) { return true; }
感谢您的回答!
答案 0 :(得分:5)
return;
相当于return undefined;
。但是它通常用在不希望返回值的函数中,所以它只是意味着“现在退出函数”。
所以代码相当于:
if (boolean) {
return undefined;
}
答案 1 :(得分:1)
基本上,在第一种情况下,您并不关心返回值:return
本身通常用于在满足特定条件时停止函数。
第二种情况如果完全不同:return true
意味着您对函数的返回值感兴趣:例如,一个名为isEmpty()
的函数检查给定列表是否包含至少一个元素是期望返回可以是true
或false
的值。在这种情况下,return
语句本身就没有意义。
答案 2 :(得分:0)
if(boolean){return true; } 表示条件是否正确返回true
if(boolean)return;
表示条件是否为真 它用于不同的目的,一个例子是验证,如果一个条件不符合函数的标准就停止运行。
答案 3 :(得分:0)
第一个执行if语句并返回" undefined"无论if语句的结果如何,都返回调用。仅当if语句为真时,第二个返回true布尔值。
答案 4 :(得分:0)
让我们考虑一个例子,你有一个文本框和一个提交按钮。您希望验证文本框是否未提交为空。
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == "") {
alert("Name must be filled out"); return; }}
尝试在txt框中提交没有值的表单。
案例1(返回):它将显示警报但不会限制提交。 案例2(返回true):与上述相同。 案例3(返回false):最后它将限制提交。 首先表现得像类似因为回归;将返回undefined,这不是任何错误。
答案 5 :(得分:0)
返回语句中断函数的执行,并使当前函数保留值或未定义的值。
在第一种情况下,return语句中断函数的执行并发送布尔值。
function returnValue(){
return true;
}
returnWithValue();// this function hold the Boolean value
var value = returnWithValue();//true
在第二种情况下,return语句中断函数的执行并发送未定义的值,因为我们没有提供值。保存返回值的变量已创建,但未分配任何值。
function returnWithoutValue(){
return;
}
returnWithoutValue(); //此函数保存未定义的值,因为我们没有发送任何值 var value = returnWithoutValue(); // undefined