Javascript 为什么使用do while而不是简单的if语句

Javascript 为什么使用do while而不是简单的if语句,javascript,if-statement,do-while,Javascript,If Statement,Do While,有人能告诉我为什么在下面的代码中使用do/while lop而不是简单的if语句: function prev(elem){ do { elem = elem.previousSibling; } while(elem && elem.nodeType != 1); return elem; } 为什么不: function prev(elem){ if(elem && elem.nodeType != 1) { elem = elem.

有人能告诉我为什么在下面的代码中使用do/while lop而不是简单的if语句:

function prev(elem){
do {
    elem = elem.previousSibling;
} while(elem && elem.nodeType != 1);
    return elem;
}
为什么不:

function prev(elem){
if(elem && elem.nodeType != 1) {
    elem = elem.previousSibling;
    return elem;
}

使用do/while是否有优势?谢谢

do while
将运行一次,并在语句为true时继续运行,而
if语句
将只运行一次


在这种情况下,它可能是等效的(取决于代码和数据的设置方式),但通常是使用
do whiles
的方式。

do while
将运行一次,并在语句为真时继续运行,而
if语句只运行一次


在这种情况下,它可能是等效的(取决于代码和数据的设置方式),但通常是使用
do whiles
的方式。

如果您希望某些内容在满足特定条件之前一直重复,请使用
do
for
while
语句。如果只想检查某项内容一次,请使用
If
语句。

如果希望某项内容在满足特定条件之前一直重复,请使用
do
for
while
语句。如果只想检查一次,请使用
If
语句。

如果使用do-while循环,则语句将至少执行一次。然后检查一个条件,如果不满足该条件,则不再执行该语句。但是,如果使用另一个选项,则会选中第一个条件,如果满足该条件,则只执行一次语句。否则,它们甚至一次也不会执行。

如果使用do while循环,则语句将至少执行一次。然后检查一个条件,如果不满足该条件,则不再执行该语句。但是,如果使用另一个选项,则会选中第一个条件,如果满足该条件,则只执行一次语句。否则,它们甚至不会执行一次

A While or Do While statement is a continuous loop until a condition is met.  
An If, Then, Else/Else If is a simple evaluative statement rather than a loop.
此处
do while
将至少运行一次,并将执行,直到满足while条件。
但是在
if语句中,它将首先检查条件,只执行一次并返回响应

此处
do while
将至少运行一次,并将执行,直到满足while条件。

但是在
if语句中,它将首先检查条件,并且将只执行一次并返回响应。

对于相同的功能,您必须将调用相同功能的
if
一起使用
else
。这两个代码段的工作方式明显不同。对于相同的功能,您必须将调用相同函数的
if
一起使用
else
函数。这两个代码段的工作方式明显不同。谢谢,@grailsguiy。我只是想得不对。这完全有道理。谢谢,@grailsgay。我只是想得不对。这完全有道理。谢谢,@Shaz。我现在明白了。谢谢,沙兹。我现在明白了。