Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 25.09.2014, 09:21
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от WorM32
Если взять другую строку( например, в 100 раз длиннее текущей) результат может быть совершенно противоположным.
Путем копирования увеличил строку по такому принципу

var value = "'abc','dbf','fsdf','4444','dbf','fsdf','4444','dbf','fsdf','4444','fsdfdsf'"

Добавил ооочень много раз (более 100раз)
Вот результат теста

Код 1
Цитата:
Результат (больше - лучше): ≈ 38 376 выполнений/1000 мс
Код 2
Цитата:
Результат (больше - лучше): ≈ 166 282 выполнений/1000 мс
Ответить с цитированием
  #12 (permalink)  
Старый 25.09.2014, 09:27
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

Сообщение от ksa Посмотреть сообщение
Сделать массив, выполнить в нем поиск, удалить найденый элемент, переделать в строку - это проще понять, нежели замена простого регулярного выражения в строке на пустую строку?
Для тех кто не знает регулярки - да. ТС, между прочим, это доказал.

Сообщение от ksa Посмотреть сообщение
Вот тут бы тестом тем это подтвердить...
Да без проблем. Размножил строку x 100.

Код 1: Результат (больше - лучше): ≈ 157 863 выполнений/1000 мс
Код 2: Результат (больше - лучше): ≈ 92 441 выполнений/1000 мс
Ответить с цитированием
  #13 (permalink)  
Старый 25.09.2014, 09:30
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от WorM32
Да без проблем. Размножил строку x 100.
По какому принципу "множил"?
Ответить с цитированием
  #14 (permalink)  
Старый 25.09.2014, 09:33
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Если просто копировал ее всю - тебе придется дописывать цикл, для удаления всех ключевых фраз, а не одной, как у тебя сейчас.
Поскольку регулярка-то замент именно все фразы...
Ответить с цитированием
  #15 (permalink)  
Старый 25.09.2014, 09:34
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от WorM32
Для тех кто не знает регулярки - да. ТС, между прочим, это доказал.
ТС и с массивами не умеет работать... Это он так же "доказал".
Ответить с цитированием
  #16 (permalink)  
Старый 25.09.2014, 09:48
Профессор
Отправить личное сообщение для WorM32 Посмотреть профиль Найти все сообщения от WorM32
 
Регистрация: 11.02.2014
Сообщений: 303

ksa,
Переделал тест в самый худший вариант, когда искомая строка находится в самом конце. Первый код проигрывает второму на 12%.

Еще есть такой тест, но это немного не то.
http://jsperf.com/string-vs-array-indexof/2
Ответить с цитированием
  #17 (permalink)  
Старый 26.09.2014, 16:19
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Задача изначально бредовая, вся на костылях, но автор и под пытками не расколется чего он там отслеживает. Или расколется?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление пробелов в начале и конце строки CyMKuH Общие вопросы Javascript 6 22.03.2016 13:41
Удаление строки в jqgrid pirat89 jQuery 3 06.02.2014 10:58
Удаление совпадения строки из строки feniks7 Общие вопросы Javascript 3 24.07.2013 22:15
удаление произвольной строки таблица kayuga jQuery 1 12.01.2011 04:40
удаление строки pingvinchic Events/DOM/Window 1 25.02.2010 17:32