子函数如何在父函数中阻止后面的执行
1、常用的办法是:根据子函数拿到的东西返到父函数里的某个变量,根据该变量在父函数里判断是否要return父函数。
function parent(){
console.log(1)
const res = children()
if(res) return
console.log(2)
//...
}
function children(){
//...
console.log(3)
return true //false
}
parent()
//1
//3
没有打印2
2、不常规办法:利用throw error和try…catch配合做到不执行后面的逻辑
function parent(){
console.log(1)
const res = children()
console.log(2)
//...
}
function children(){
//...
console.log(3)
throw Error(true)
//false
}
try{
parent()
} catch(e){
console.log(e)
}
console.log(4)
/**
1
3
Error: true
at children (<anonymous>:11:9)
at parent (<anonymous>:3:15)
at <anonymous>:15:3
4
*/
没有打印2