<html>
<head>
<title>DIsplaying triangle /square</title>
<script type="text/javascript">
document.write("<html><body><p style='line-height:100%;>");
var sides=prompt("Enter the number of sides","3/4");
if(sides==4)
{
var i=0;
var j=0;
var z=0;
while(i<=6)
{
if(i==0||i==6)
{
while(j<=6)
{
document.write("*");
document.write("<span style='visibility:hidden'>*</span>");
++j;
}
j=0;
document.write("<br\>");
}
else
{
while(z<=6)
{
if(z==0||z==6)
{
document.write("*");
document.write("<span style='visibility:hidden'>*</span>");
}
else
{
document.write("<span style='visibility:hidden'>*</span>");
document.write("<span style='visibility:hidden'>*</span>");
}
++z;
}
z=0;
document.write("<br\>");
}
++i;
}
document.write("</p></body></html>");
}
else
{
var i=0;
}
</script>
</head>
</html>
我在提示框中输入时的输出4
应该是:
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
(认为它是一个完美的正方形。在这里很难画出来。)
但我得到:
** * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
看第一行。它有前 2 个“*”。根据代码,它不应该发生。这部分出了点问题document.write("*")
。当我尝试使用alert
我发现的第一次调试时(即当 i=0 时)第一次document.write("*")
被忽略。但每隔一段时间都会考虑。