У меня есть переменная, которая динамически задается на странице. Затем у меня есть список цветов в массиве. Мне нужно увидеть, содержит ли переменная цвета один из элементов массива.JavaScript, если переменная имеет indexOf элемент в массиве
Вот код:
var colorlist = ['Silver', 'Gray', 'Black', 'Red', 'Purple', 'White'];
var col1 = "";
var color1 = 'Titanium Silver';
for (var c = 0; c < colorlist.length; c++)
{
if(color1.indexOf(colorlist[c]))
{
col1 = colorlist[c];
}
else
{
}
}
То, что я бы ожидать, что это возвращение является «Серебро», но он постоянно возвращался последний элемент в массиве. Что я делаю не так?
Если вы используете строку, помните, что IE <9 не имеет 'indexOf', вы можете использовать' search' – NicoSantangelo
, который я тестировал в IE 7+, и все работает отлично. – cfox
@NicoSantangelo: у него нет 'Array.indexOf', но' String.indexOf' в порядке. – georg