正在回答
3回答
同学你好,问题解答如下:
1.代码要顺序执行,弹窗写在循环里面,所以要先进入了循环,才能输入退出,并把它加入到数组。当第二次循环执行完毕跳出本次循环,执行第三次循环的时候,才会判断input不符合条件,此时不会进入循环了,循环终止。

2. 第二次输出的50,是第一次循环时添加的。第一次循环时,添加了一个50,并输出50。那么第二次又添加了一个退出,数组中自然保存了两个元素,即50和退出,所以第二次输出50和退出。
祝学习愉快~
好帮手慕夭夭
2020-10-14 16:47:15
同学你好,这是因为document.write输出写在了循环里面,具体参考如下理解:
进入第一次while循环,先弹出一个弹窗并输入50。然后50添加到数组new_arr中,此时数组中有一个元素50。最后输出数组new_arr,这是第一次输出50。
进入第二次循环,先弹出一个弹窗输入退出。然后退出添加到数组new_arr中,此时数组中有两个元素,即50和退出,最后输出数组new_arr,输出的内容为5和退出,这是第二次输出50。

这里想要正确输出,把document.write放在循环外部。另外,最后输出的退出也是不需要显示的,要删掉。如下调整:

如果我的回答帮到了你,欢迎采纳,祝学习愉快~
能量咕噜略略
2020-10-14 16:20:24
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<script>
var input;
var new_arr = [];
while (input != "退出") {
input = prompt("输入一个数字");
new_arr[new_arr.length] = input;
document.write(new_arr);
}
</script>
</body>
</html>
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星