我正在学习javascript,我找到了这个代码示例
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("Name must be filled out");
return false;
}
}
我想知道这是否与下面的代码相同,我将 返回值 移到 if条件下面?< / p>
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("Name must be filled out");
}
return false;
}
答案 0 :(得分:2)
没有
不出所料,将return false
移到条件块之外意味着您已将其更改为始终返回false。
您尚未提供有关如何调用函数的上下文,但最可能的效果是更改行为:
如果字段未填写,请显示提醒并停止提交表单。否则,请提交表格。
到
如果字段未填写,请显示提醒并停止提交表单。否则,仍然停止提交表单。在任何情况下都不要提交表格。
答案 1 :(得分:2)
不,不是。如果函数中缺少return
语句,则应将其视为最后一行:
return undefined;
所以,第一版:
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("Name must be filled out");
return false;
}
return undefined;
}
第二版:
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("Name must be filled out");
}
return false;
}