Javascript, если в x
Возможные дубликаты:
Проверить значение в массиве Javascript
Лучший способ найти элемент в массиве JavaScript?
Javascript - array.contains(obj)
Я обычно программирую на python, но недавно начал изучать JavaScript.
В python это вполне допустимая инструкция if:
list = [1,2,3,4]
x = 3
if x in list:
print "It in the list!"
else:
print "It not in the list!"
но у меня были pobleams, делающие то же самое в Javascript.
Как вы проверяете, есть ли x в списке y в JavaScript?
Ответы
Ответ 1
Используйте indexOf, который был представлен в JS 1.6. Вам нужно будет использовать код, указанный в разделе "Совместимость" на этой странице, чтобы добавить поддержку браузеров, которые не реализуют эту версию JS.
У JavaScript есть оператор in
, но он проверяет ключи, а не значения.
Ответ 2
В javascript вы можете использовать
if(list.indexOf(x) >= 0)
P.S.: поддерживается только в современных браузерах.
Ответ 3
более генетическим способом вы можете сделать это:
//create a custopm function which will check value is in list or not
Array.prototype.inArray = function (value)
// Returns true if the passed value is found in the
// array. Returns false if it is not.
{
var i;
for (i=0; i < this.length; i++) {
// Matches identical (===), not just similar (==).
if (this[i] === value) {
return true;
}
}
return false;
};
тогда вызовите эту функцию таким образом -
if (myList.inArray('search term')) {
document.write("It in the list!")
}