if条件判断 里边 return false; 或者return true;并不能作为函数的返回值。if条件判断里的return,只是影响程序是否继续执行。
如果需要返回值,需要在函数层级 return 下
另外,可能牵扯到没有涉及到的情况,需要有个默认值。
<!DOCTYPE html>
<html lang="en">
<style>
div{
width: 100px;
height: 50px;
background-color: skyblue;
margin: 40px;
text-align: center;
line-height: 50px;
}
</style>
<body>
<div onclick="tag()">
按钮
</div>
<script>
let aa = 'zifuchuanzifuchuan';
let bb = 'zifuchuanzifuchuan';
function tag(){
console.log('执行了吗')
console.log('函数执行结果',compare(aa,bb)) //undefined
console.log('函数执行结果',compareVal(aa,bb)) // true
if(!compare(aa,bb)){
return
}
console.log('还执行吗')
}
function compare(a,b){
if(a.length < b.length){
return false
}
}
function compareVal(a,b){
let compareFlag = true;
if(a.length < b.length){
compareFlag = false
}
return compareFlag
}
</script>
</body>
</html>
网友评论