Во-первых, словарь должен быть проиндексирован.Затем содержимое страницы также должно быть проиндексировано и найдены совпадения для словаря.Затем должны быть рассмотрены экземпляры на странице (например, выделены, связаны с определениями и т.скажем, как сценарий Greasemonkey.Я не думаю, что хорошо проиндексированный словарь из 50000 элементов будет выглядеть достаточно современным браузером на среднем ПК, даже для страниц с несколькими тысячами слов.
Редактировать
Если у вас есть два списка, тоиндексировать слова на странице (например, очень просто создать отсортированный уникальный список с ключом к первому A, первому B и т. д.).Используйте короткий список для поиска подходящих слов.
Используйте первый набор совпадений слов и найдите их на странице, найдите предыдущее слово, чтобы увидеть, соответствует ли оно слову во втором списке.Сделайте то же самое со следующим словом.Простой двоичный поиск в списке из 50 000 слов никогда не требует более 16 поисков.Использование алфавитного индекса для первого поиска, а затем двоичного, должно сократить его до 5 или 6 поисков за исходное соответствие.
Вы также можете использовать объект вместо индексированного списка и использовать if (word in wordList)
, чтотакже будьте очень быстрыми (не забудьте включить тест hasOwnProperty).
Если вас интересует только использование современного браузера, обратитесь к веб-работникам и веб-хранилище