while(true)条件的意义是什么?

时间:2013-05-04 23:41:12

标签: javascript conditional-statements

我今天在javascript中浏览了一段代码,突然遇到了这段片段的情况。

add: function (value) {
    var current = null;
    if (this._root === null) {
        this._root = node;
    } else {
        current = this._root;

        while (true) {
            // Some code goes here.
        }
    }
}

条件while(true)总是正确的。它没有进入我的脑海,为什么条件放在这里。

3 个答案:

答案 0 :(得分:1)

while(true)

将永远执行,无限while循环中必须有 内的逻辑才能终止。

至于为什么?,这是显示无限循环的一种非常常见的方式,紧随其后

for(;;){}

答案 1 :(得分:1)

while语句将循环执行循环中的代码,除非你有内部逻辑调用breakreturn来终止循环。

示例

if (value == "done")
   break;

if (value == "done")
    return;

答案 2 :(得分:1)

在我看来,这是一个非常糟糕的做法。
您应始终将条件绑定到条件循环中的布尔变量。这只是因为如果你使用变量,它的值可以在以后改变。从我所看到的,这看起来像一个无限循环。
但是,如果你仔细观察该循环中的代码,你可能会发现一些条件,一个if语句或许使用break语句来突破那个无限循环循环。