我在JavaScript代码中多次看到人们在最后添加return true
,尽管没有必要。有谁知道为什么?
var _globalString;
function doSomething()
{
_globalString= _globalString +' do something';
//some codes to do something more
//finally adding a return true
return true;
}
答案 0 :(得分:19)
可能让一些人养成这种习惯的事情是表格的事件处理程序,如果你有,请说:
<form onsubmit="return myfunction();">
和myfunction()
返回true,表单提交,否则如果返回false则不返回。一般来说,人们都可以养成这个习惯。有些语言需要函数的返回值,Javascript不需要;并且在大多数功能结束时return true
没有用处。
答案 1 :(得分:3)
除了Erik的回答,我想补充一下
当您希望将布尔值作为返回值时,也会使用return true / return false 。并根据该返回执行其他一些功能。
答案 2 :(得分:3)
函数内部的“return”会自动停止执行该函数,例如:
function myFunc(){
if(foo == 'bar'){
/* do something */
}else{
/* do something */
}
}
与:
相同function myFunc(){
if(foo == 'bar'){
/* do something */
return true;
}
/* if foo != 'bar' then whatever follows is executed... */
}
答案 3 :(得分:0)
实际上,如果你在onsumbit事件中调用该函数
示例
<input type=sumit value=click Onsumbit='return function_name();">
当您调用时,如果该函数仅返回true,则表单将提交
如果返回false,则不会提交表单
答案 4 :(得分:0)
在这种情况下,您也不需要使用返回true或false
var newPage = "http://www.google.com";
function redirectURL(){
window.location.href= newPage;
return true; //no return required
}
答案 5 :(得分:-1)
很难说为什么有些程序员会做某些事情。
也许它意在表明成功/失败,但他们还没有添加任何失败的分支?