JavaScript中思考do…while和while语句的区别
Do…while和while…do的区别在于对于临界值的测试上。当在执行的时候只选择临界值来测试时,你会发现do…while至少要执行一次,而while…do则一次都不会执行。但是,当不去考虑临界值的时候,do…while和while…do的执行结果是一样的。让我们用事实来说话吧:
只测试临界值:
1 <!DOCTYPE html> 2 <html> 3 <body> 4 <p>Try to practice while statement!</p> 5 <p id = "demo"></p> 6 <script> 7 var x = ""; 8 var i = 0; 9 var x = ""; 10 var i = 0; 11 while(i < 0) 12 { 13 x += "The number is " + i + "." + "<br>"; 14 i ++; 15 document.getElementById("demo").innerHTML = x; 16 } 17 18 do 19 { 20 x +="The number is " + i + "." + "<br>"; 21 i++; 22 document.getElementById("demo").innerHTML = x; 23 } 24 while(i < 0); 25 </script> 26 </body> 27 </html>
View Code
尝试着只去测试临界值(i=0)时,你会发现只有do…while会输出,而while…do会在判断时直接不符合条件,这似乎很简单的逻辑,但有时候,也会让死钻牛角尖的我陷入混乱的状态。
不考虑临界值时只执行while语句:
1 <!DOCTYPE html> 2 <html> 3 <body> 4 <p>Try to practice while statement!</p> 5 <p id = "demo"></p> 6 <script> 7 var x = ""; 8 var i = 0; 9 while(i < 5) 10 { 11 x += "The number is " + i + "." + "<br>"; 12 i ++; 13 document.getElementById("demo").innerHTML = x; 14 } 15 </script> 16 </body> 17 </html>
View Code
不考虑临界值时只执行do…while语句:
1 <!DOCTYPE html> 2 <html> 3 <body> 4 <p>Try to practice do while statement!</p> 5 <p id = "demo"></p> 6 <script> 7 var x = ""; 8 var i = 0; 9 do 10 { 11 x +="The number is " + i + "." + "<br>"; 12 i++; 13 document.getElementById("demo").innerHTML = x; 14 } 15 while(i < 5); 16 </script> 17 </body> 18 </html>
View Code
你会发现此时他们的执行结果是一样的。所以在使用的时候不用再纠结是选哪种循环来执行。
说明:我目前所学习的所有例子都是来自于 http://www.w3schools.com.
原文链接:https://www.cnblogs.com/Bonnieh/p/5668998.html
本文来源 爱码网,其版权均为 原网址 所有 与本站无关,文章内容系作者个人观点,不代表 本站 对观点赞同或支持。如需转载,请注明文章来源。
© 版权声明
文章版权归作者所有,未经允许请勿转载。