【问题标题】:Using indexof value to return a value in a second array using Javascript使用 indexof value 在使用 Javascript 的第二个数组中返回一个值
【发布时间】:2014-06-01 22:21:45
【问题描述】:

我正在尝试根据用户提示在数组中查找项目的索引位置 并在第二个数组中检索相同索引位置的值。

var arrayStars = ["Polaris", "Aldebaran", "Deneb", "Vega", "Altair", "Dubhe", "Regulus"];
var arrayConstellations = ["Ursa Minor", "Taurus", "Cygnus", "Lyra", "Aquila", "Ursa Minor", "Leo"];

function starSearch(param) {
var matchingConstellation = arrayConstellations[arrayStars.indexOf("param")];
return matchingConstellation;
  }

var userInput = prompt("Enter a star name");
starSearch(userInput);

当我在提示中输入文本时,没有响应。

我尝试在每一行之后登录到控制台以查看有什么输出(如果有的话),这一切似乎都有效,但由于某种原因它没有给出预期的结果。

我什至已将其中一个数组值替换到该行中

var matchingConstellation = arrayConstellations[arrayStars.indexOf("Vega")];

然后从第二个数组返回正确的索引项。当一切都在一起时,它似乎没有显示结果。

【问题讨论】:

    标签: javascript arrays prompt indexof


    【解决方案1】:

    去掉引号

    arrayStars.indexOf("param")
    

    arrayStars.indexOf(param)
    

    您正在搜索字符串文字 param,而不是变量 param 包含的任何内容

    FIDDLE

    【讨论】:

    • 非常感谢,解决了。除了建议之外,我完全不喜欢将它显示在屏幕上。到目前为止,只花了 1.5 天的时间试图弄清楚。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-10
    • 2018-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多