我试图在数组中找到某个字符串。
到目前为止,这是我的代码:
function getUserName(arrayName){
for (counter = 0 ; counter < arrayName.length ; counter++){
check = arrayName[counter].search("Jon");
if (check != -1){
result = arrayName[counter];
}
break;
}
}
我遇到的问题是,如果数组Jon
中的名称高于(e.g Jon_111)
,则结果为Jon_111
而不是Jon
如果只是Jon
,我该怎么用来告诉它只找到并返回。
答案 0 :(得分:1)
您可以使用find()
查找数组的元素(或仅indexOf()
,具体取决于用例)。要仅获得准确结果,请使用===
let index = arrayName.indexOf('Jon');
// or
let element = arrayName.find(e => e === 'Jon');
答案 1 :(得分:0)
为什么不只是===?
function getUserName(arrayName){
for (counter = 0 ; counter < arrayName.length ; counter++){
check = arrayName[counter]==="Jon";
if (check === true){
result = arrayName[counter];
}
break;
}
}