Показать сообщение отдельно
  #13 (permalink)  
Старый 22.03.2015, 10:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126


так и не понял что быстрее
var phrase = ['Есть массив фраз','Грач,ВорОна,Сорока','Вася(Крюков)'], word = ['в'];
   function oneINother(word,phrase) {
    function c(d) {
        return word.some(function(a) {
           // return (new RegExp("^" + a, "i")).test(d)
            return d.toLowerCase().slice(0, a.length) === a.toLowerCase();
        })
    }
    return phrase.filter(function(a) {
        return a.split(/[\s,.]+/).some(c)
    })
};
console.time('test');
oneINother(word,phrase);
console.timeEnd('test');
alert(oneINother(word,phrase));
   function oneINother2(word,phrase) {
    function c(d) {
        return word.some(function(a) {
            return (new RegExp("^" + a, "i")).test(d)
           // return d.toLowerCase().slice(0, a.length) === a.toLowerCase();
        })
    }
    return phrase.filter(function(a) {
        return a.split(/[\s,.]+/).some(c)
    })
};
console.time('test2');
oneINother2(word,phrase);
console.timeEnd('test2');
alert(oneINother2(word,phrase));

Последний раз редактировалось рони, 22.03.2015 в 11:24.
Ответить с цитированием