在javascript中的if语句中定义变量

时间:2017-05-13 09:55:43

标签: javascript variables if-statement

我希望在验证条件时为变量赋值,如

if (k<12){

var Case=4;

} 

当我调用此变量在页面正文中打印时出现问题

document.write(Case);

3 个答案:

答案 0 :(得分:3)

基本上,var statement被吊起并分配了undefined

  

变量声明,无论它们出现在何处,都会在执行任何代码之前进行处理。使用var声明的变量的范围是其当前执行上下文,它是封闭函数,或者对于在任何函数外部声明的变量,全局。如果你重新声明一个JavaScript变量,它就不会失去它的值。

执行顺序:

var Case;        // hoisted, value: undefined

if (k < 12) {
    Case = 4;
}

答案 1 :(得分:1)

您未定义,因为您尚未实际定义它。您在条件为真时定义它。你应该写这样的代码。

var Case = null;
var k = 0;

if(k > 14) {
  Case = 3;
}

document.write(Case);

我希望它有所帮助。

答案 2 :(得分:0)

var Case = 0;
if(k<12){
  Case = 4;
}
document.write(Case);

你需要先定义它,所以如果k <12 == False它不会被定义。