如何使用条件语句设置变量?

时间:2012-05-15 18:36:15

标签: jquery

即使在功能块中放置一个简单的打印(“foo”)也能正常工作,但这不起作用。

<script>

var viewportHeight = $(window).height();
var X;

$(function() {

    if (viewportHeight >= 600) {
         var X = 100;
       }
});
</script>

2 个答案:

答案 0 :(得分:8)

var关键字用于创建一个变量,其范围分配给它所在的function。如果它不在函数内部,则其范围为window,它是一个全局变量。如果省略var关键字,js引擎将查找范围链以获得最接近的变量定义。因此,通过在函数内部使用var,您将创建一个名为X的新变量,该变量是该函数的本地变量。如果省略函数内的var关键字,它将查找范围链并找到您在上面定义的var X

<script>

var viewportHeight = $(window).height();
var X;

$(function() {

    if (viewportHeight >= 600) {
        X = 100; //don't use var if you want to access the above X
    }
});
</script>

答案 1 :(得分:2)

只是我的两分钱,但你可以将整个事情写成一个单独的表达。

  var X = $(window).height() >= 600 ? 100 : null;

这似乎是一个好的oll短手的地方