javascript - 将提示输入与数组值匹配

标签 javascript arrays

我正在玩一些我刚开始学习的基本 js,到目前为止我有下面的代码。我试图询问用户他们的名字是什么,然后告诉他们他们是否与赛车手共享相同的名字(来 self 的数组 driversNames)。

如果他们与赛车手同名,它会告诉他们他们有,否则会告诉他们他们没有。但是我觉得这里有问题:if (yourName === driversNames) 但我想不通。

不管我在提示中输入什么,它总是说对不起,你没有相同的名字。

var driversNames = ["Lewis", "Fernando", "Sebastian", "Jenson", "Daniel"]
for (var i = 0; i < driversNames.length; i++) {
  console.log(driversNames[i] + " " + "is a drivers name");
}

var yourName = prompt("What is your name?")

console.log("Your name is" + " " + yourName)

if (yourName === driversNames) {
  console.log("Awesome" + " " + yourName + " " + "you share the same name as a Formula 1 driver!")
} else {
  console.log("Sorry" + " " + yourName + " " + "you don't have the same name as any Formula 1 drivers")
}

最佳答案

你在这一行 if (yourName === driversNames) 中犯了一个错误。 它不会将您的姓名与 driversNames 中的姓名进行比较。最简单的方法:使用 indexOf 方法。所以这一行应该像下面这样

if (driversNames.indexOf(yourName) > -1) //Get Name otherwise no 

jsfiddle给你的例子,也是indefOf链接

谢谢

关于javascript - 将提示输入与数组值匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35541874/

相关文章:

javascript - 如何更新 Recoil.js 外部组件中的原子(状态)? ( react )

javascript - Visual Studio - javascript 文件生成几乎卡住 PC - 如何禁用

javascript - Node 8 与 11 时区不同

javascript - JS : Download zip file from a string with Javascript

arrays - "rotate"(循环移位)二维数组的好方法是什么?

java - 如何删除数组中的单词?

对象数组的 C++ 问题

javascript - JQuery .not() 选择不起作用

c - 指向常量数组的双指针

javascript - 如何获取:contains() Selector using an Array with multiple matches in a DIV?的总实例