2013-10-02 5 views
1

У меня есть массив: [1, 2, 3, 4, 5]Angularjs: Если равен массив

Использование нг-шоу (например, ng-show="foo == bar"), как определить, является ли число равняется одному из этих чисел в массиве?

+0

Loop и проверить. – tymeJV

+0

Звучит как работа, более подходящая для директивы. –

+0

@ francisco.preller, просматривающий документы, вы правы – goo

ответ

3

Допустим, у вас есть массив foo и число 118, так что это должно работать

ng-show="foo.indexOf(118) != -1" 
+0

Thx. Кажется, это работает, но не могли бы вы объяснить мне это? Почему «-1»? – goo

+0

-1 для 'indexOf' означает, что он не существует в массиве – Ronnie

+0

Конечно,' indexOf' ищет в массиве элемент (число в этом случае) и возвращает индекс, что означает положение этого элемента в массиве , Итак, если массив похож на [9,3,5,11], и вы делаете [9,3,5,11] .indexOf (5), результат будет равен 2, потому что 5 находится в позиции №2 (помните массив основаны на нулевом значении). Если он возвращает -1, это означает, что элемент отсутствует в массиве. – ravenlp

Смежные вопросы