如何将变量值与Javascript中的值数组匹配?

问题描述:

我有值与名称的数组:如何将变量值与Javascript中的值数组匹配?

names = ['Jim', 'Jack', 'Fred'] 

我还从一个函数,这是在串形式的名称中接收的值,如:

returnedValue = 'Jim' 

如何运行对名称数组的值的返回值字符串和测试匹配?

我的感觉是,你会想要使用数组原型的.filter方法,但我无法想象如何做到这一点。

+2

使用** [indexOf](http://www.w3schools.com/jsref/jsref_indexof_array.asp)** – Prateek 2014-12-03 04:24:04

+1

'names.indexOf (returnedValue)' – Leo 2014-12-03 04:24:10

+0

好吧,完美的作品,谢谢! – Antoine 2014-12-03 04:27:43

有一个的indexOf方法,所有阵列具有(除旧版本的Internet Explorer),将返回一个元素的索引数组中,或-1,如果它不是数组中:

if (yourArray.indexOf("someString") > -1) { 
    //In the array! 
} else { 
    //Not in the array 
} 

如果您需要支持旧的IE浏览器,则可以使用MDN文章中的代码对此方法进行填充。

https://*.com/a/12623295/2934820

的Array.indexOf方法复制将返回一个值与返回值的位置,在这种情况下0,如果值不在数组那你将获得-1所以一般如果如果(names.indexOf(returnedValue)> -1)返回true,那么你想知道如果returnedValue是在数组中,你会这样做 ; 或者你可以做~~像约瑟夫西尔伯先生在另一个线程kindly解释