为什么我第一个输入的人名字显示不出来 哪里出错了

来源:2-14 编程练习

慕侠2380828

2020-04-27 12:01:58

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>信息录入</title>

</head>

<body>

    <input type="button" value="录入" >

    <script type="text/javascript">

        var inputs=document.getElementsByTagName("input");

        var entry=inputs[0];

        entry.onclick=entryFn;

        function entryFn(){

            var arr=new Array();

            var a=prompt("请输入员工姓名");

            while(a!="-1"){

                a=prompt("请输入员工姓名");

                arr.push(a);

            }

            arr.pop();

            for (var i = 0; i < arr.length; i++) {

                document.write("录入的第"+(i+1)+"个员工的姓名是:"+arr[i]+"<br>");

            }

        }

    </script>

</body>

</html>


写回答

2回答

慕虎8562901

2020-04-27

你定义a的时候在while循环外,后面也没有跟arr.push(a),直接进入循环了,所以第一个输入的人名不显示,直接定义一个空的 var a就可以了。

0

好帮手慕久久

2020-04-27

同学你好,问题解答如下:

按照代码的执行顺序,第一次弹出输入框输入名字后(非-1),进入while循环,然后又弹出输入框,输入名字,并将新输入的名字赋值给a,然后数组arr添加a,这个过程,没有把第一次输入的内容添加进数组arr中,可以修改成如下:

http://img.mukewang.com/climg/5ea68ca109c40d7f05540263.jpg

这位同学的解释是对的:

http://img.mukewang.com/climg/5ea68cbe09dcf5de02120060.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

0

0 学习 · 40143 问题

查看课程