You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何实现输入数字获取JavaScript数组对应元素的功能

解决你的数组下标查询问题

嘿,刚接触编程完全不用不好意思~我帮你看看这段代码的小问题,很容易解决的!

你的核心思路是对的:定义数组,输入下标后显示对应元素。但现在代码的问题是,点击按钮时传给printit函数的number是文本框这个DOM元素本身,不是你输入的数字值,所以数组没法找到对应的下标。

我给你调整一下代码,同时加了点小优化(比如判断输入是否有效),这样用起来更顺手:

<script>
var minArray = ["Hello", "Hi", "Yes", "No", "Good"];
function printit() {
    // 先获取文本框的输入值,转成数字类型
    var inputNum = parseInt(document.getElementById('number').value);
    var testElement = document.getElementById('test');
    
    // 检查输入是否是有效下标:数字,且在数组的下标范围内(数组下标从0开始哦)
    if (!isNaN(inputNum) && inputNum >= 0 && inputNum < minArray.length) {
        testElement.innerHTML = minArray[inputNum];
    } else {
        testElement.innerHTML = "请输入0到" + (minArray.length - 1) + "之间的有效数字哦";
    }
}
</script>

<form name="f1">
    <input type="text" value="" id="number" placeholder="输入0-4的数字" />
    <input type="button" value="Word is:" onclick="printit()" />
</form>
<br/>
<div id="test"></div>

改动说明:

  • 把printit函数的参数去掉了,改成在函数内部直接获取文本框的输入值,逻辑更清晰
  • 用parseInt把输入的字符串转成数字类型(因为文本框输入的内容默认是字符串)
  • 加了有效性判断:如果输入不是数字,或者超出数组的下标范围(你的数组有5个元素,下标是0到4),就显示提示信息
  • 给文本框加了placeholder提示,用户能更清楚该输入什么

你可以试试输入0显示Hello,输入1显示Hi,完全符合你的需求啦~

内容的提问来源于stack exchange,提问作者J. Doe Foe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:25:16