JavaScript初学者问题(循环)

时间:2011-04-02 19:45:37

标签: javascript

今天是我在JavaScript中的第一天。这本书(JavaScript权威指南)对所有因子进行了打印。

这就是我所做的:

<html>
<b><head> Factorial - JavaScript - Ex1</head></b>
<body>
        <h2> Factorials List </h2>
<script>

        var fact = 1; 
        var num = 1;
        for(num <= 10; num++)
            {
                fact=fact*num;
                document.write(num + "! = " + fact + "<br>");

            }
</script>
</body>
</html>

有一个我不确切知道的问题。我检查了这本书,作者解决它的方式是在循环FOR中初始化变量num。我这样做了,它奏效了。 但那和我的有什么区别?

启发我专家:)

1 个答案:

答案 0 :(得分:9)

for loop的语法必须是

for (<initializer>; <condition>; <increment>) {
    <body>
}

虽然可以省略<initializer><condition><increment>中的任何一个,但是不能删除任何分号;。这意味着,您的for循环必须使用额外的分号编写:

var num = 1;
for(; num <= 10; num++)
//  ^

或者只是将var num = 1;移到for,这通常是人们会做的事情:

for (var num = 1; num <= 10; num ++) 
//   ^^^^^^^^^^^^