进行了下方代码进行验证
package main

import "fmt"

func main(){
	if n:=1+1;n!=2{
		fmt.Print("if n:",n)
	}else if n<2{
		fmt.Print("else if n:",n)
	}else {
		fmt.Print("else n:",n)
	}
	// fmt.Print("n:",n)
}

结果:

else n:2

总结,由代码执行结果可得:if 判断条件中临时定义的变量,其生命周期存在于整个if else语句逻辑中,不管是if分支逻辑还是else分支逻辑。注意:在if else外则直接会提示 undefined: n