Почему я не могу найти UserAgent с помощью цикла по массиву для значения - PullRequest
0 голосов
/ 09 февраля 2012

Попытка обнаружить мобильное устройство путем поиска по нескольким ключевым словам в navigator.userAgent.Что я делаю не так?

var usrAgent = navigator.userAgent.toLowerCase();

function searchArray(arr, search) {
    for(var i=0; i<arr.length; i++) {
        if (arr[i].search(search) > -1) {return true};
    }
}

searchArray(["nokia","blackberry","iphone","ipad","android","apple"], usrAgent);

Ответы [ 3 ]

3 голосов
/ 09 февраля 2012

Использование: indexOf

if (arr[i].indexOf(search) > -1)
1 голос
/ 09 февраля 2012

Измените ваше состояние на:

if (search.toLowerCase().indexOf(arr[i]) >= 0) {return true};
0 голосов
/ 09 февраля 2012

вы передаете usrAgent, который является строкой, функции, которая ожидает поиск, которая является функцией, которая вызывается в searchArray - вам нужно передать ссылку на функцию для поиска, который выполняет поиск на основе поискатермин

...