Что быстрее match(regexp) VS ['string'].split()?!
Доброго времени суток!
Заинтересовался этим вопросом и чесно не могу получить точного ответа - написал цикл на 1000 повторений - делаю по 10 прогонов и сравниваю общее среднее значение, но результаты раз на раз очень рпротиворечивы. Если уточнять то по моему "исследованию" лидирует match() 6 к 5 но тут разница всего в одно очко (6 раз сранивал общее среднее от каждого). В общем если есть кто то поосведомленнее - пожулуйста помогите. Заранее спасибо.:thanks: |
Цитата:
|
var str='1 2 3 4 5 6'; var a=str.match(/\d+(?=\s)/g); Результат (больше - лучше): ≈ 543 278 выполнений/1000 мс var str='1 2 3 4 5 6'; var a=str.split(' '); Результат (больше - лучше): ≈ 1 850 198 выполнений/1000 мс Т.е. split() уделал match() в этом тесте... |
если сделать и split c регуляркой str.split(/\s+/)
то у меня в FF split проиграл |
Т.о. нужно гибче подходить к проблеме. :D
Тестировать каждый "свой" вариант и оставлять более быстрый... |
Благодарю за помощь!
|
Цитата:
обязательно запомню это |
Ответы на подобные вопросы быстрее всего гуглить так "match vs split jsperf". Если же не найдете уже готового теста на jsperf.com, сделать там свой - дело пары минут.
|
Часовой пояс GMT +3, время: 00:51. |