使用 HTML 和 JS 生成和显示数组输出

Generating and Displaying an Array Output Using HTML & JS

提问人:Julian Maulana 提问时间:11/17/2023 最后编辑:Amit MohantyJulian Maulana 更新时间:11/17/2023 访问量:65

问:

我一直在尝试从用户输入动态创建一个数组并以特定格式显示结果,例如 [100, 100, 200, 200, 300, 500, 900, 1500, 2400, 3800, 6100]。但是,我当前的代码没有产生所需的输出。这是我的 HTML 和 JavaScript 代码:

<html lang="en" dir="ltr">
<head>
    <meta charset="utf-8">
</head>
<body style="text-align: center;">
    <h3 id="po">Input Array Elements</h3>
    <form class="" action="index.html" method="post">
        <input type="text" name="array[]" value="100" /><br>
        <input type="text" name="array[]" value="100" /><br>
        <input type="text" name="array[]" value="200" /><br>
        <button type="button" name="button" onclick="createArray()">
            Submit
        </button>
    </form>
    <br>
    <p id="par"></p>
    <script type="text/javascript">
        //var k = "Source Array is [";
        function createArray() {
            var k = "Source Array is [";
            var input = document.getElementsByName('array[]');
            let lastElement = input[input.length - 1].value;
            for (var i = 0; i < 11; i++) {
                var val = 0;
                if (i >= input.length) {
                    val = val * 2;
                    k += " " + val;
                } else {
                    val = input[i].value;
                    k += " " + val;
                }
                k += (i == 11) ? "]" : ",";
            }
            k += "]";

            document.getElementById('par').innerHTML = k;
            document.getElementById("po").innerHTML = "Output";
        }
    </script>
</body>
</html>

电流输出为:[ 100, 100, 200, 0, 0, 0, 0, 0, 0, 0,]

我将不胜感激对代码的任何帮助或修改,以帮助生成所需的输出数组 [100, 100, 200, 200, 300, 500, 900, 1500, 2400, 3800, 6100]。谢谢!

JavaScript 的HTML

评论

2赞 Titus 11/17/2023
您已经在循环中定义了,这意味着: 将始终设置为 .valvar val =0;val = val * 2;val0
0赞 Julian Maulana 11/17/2023
是的,这就是我的代码考试的问题
2赞 Amit Mohanty 11/17/2023
您能描述一下您期望的输出背后的逻辑吗?

答: 暂无答案