2-12问题

来源:2-12 编程练习

qq_一个人一個人_0

2018-07-25 13:24:25

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>统计员工工资</title>
</head>

<body>
    <script>
    var a = new Array();
        b = prompt("请输入员工工资");
        i = 0;
     while (b != "退出"){
        a[i] = b;
        i++;
        b = prompt("请输入员工工资");
    }

    document.write(a);
    </script>
</body>

</html>

老师,为什么我这个里面没有加任何去除最后一个数组元素的语句,最后输出结果也不会出现 退出 两个字呢

而这个里面又非要加上去除最后一个数组元素的语句才能去掉-1,两个的区别在哪里

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>数组排序</title>
</head>
<body>
<script>
var input;
    var arr=[];
    var i=0;
    while(input!=="-1"){
        input=Number(prompt("请输入您想排序的数字"));
        arr[i]=input;
        i++
     }
     // arr.pop();
    arr.sort(function(a,b) {return b-a});
document.write(arr);
</script>
</body>
</html>


写回答

1回答

好帮手慕糖

2018-07-25

你好,执行循环不一样哦,第一个,是输入之后,然后进行判断,判断之后,条件成立之后,在放进数组,然后改变i的值,再次输入。所以在判断之后,若条件不成立,就结束循环了,不会再放入数组。

而第二个,是先输入,输入之后,就放入数组,然后改变i的值,然后在判断,

就是说,第一个是在判断之后,放入数组的,而第二个是在放入之后判断的。

且第二段代码,因为类型不同的问题,是不会结束循环的哦,关于类型已经在你的另一个问题http://class.imooc.com/course/qadetail/61139 中进行了解释,可以查看下。

若能解决你的疑问,望采纳。

祝学习愉快~

1

0 学习 · 36712 问题

查看课程