此代码想要检查数组是否包含名称,并且数组中所有名称的第一个字母都是大写。有许多用户在不使用名字的大写字母的情况下写下他们的名字。
所以我想在代码中传递这个条件,通过正则表达式(/ i),我可以将它与字符串和其他一些函数一起使用,但我不能将它与变量一起使用。
有人能帮助我吗?
function runTest() {
"use strict";
var value = document.getElementById("inin").value;
if (names.indexOf(value) > -1) {
x.innerHTML = "yes " + value + " your name is here, your are fully approved";
} else {
x.innerHTML = "Sorry, Your name isn't here";
}
}
答案 0 :(得分:1)
在这种情况下,您不需要正则表达式。只需确保您的列表全部是大写或大写,只需将传入值转换为该大小写。
var outputEl = document.getElementById("output");
var names = [ 'mary', 'bob', 'joseph' ];
function runTest() {
"use strict";
var value = document.getElementById("inin").value;
if (names.indexOf(value.toLowerCase()) > -1) {
outputEl.innerHTML = "Yes " + value + ", your name is here, you're fully approved.";
} else {
outputEl.innerHTML = "Sorry, Your name isn't here.";
}
}

<input type="text" id="inin" value="Bob" />
<input type="button" value="Test" onClick="runTest()" />
<br />
<span id="output"></span>
&#13;