Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   регексп в качестве ключа хеша (https://javascript.ru/forum/misc/32186-regeksp-v-kachestve-klyucha-khesha.html)

pikko 06.10.2012 15:51

регексп в качестве ключа хеша
 
можно ли получить список ключей ( или элементов ) хеша, которые соответсвуют определённому регекспу, без явного перебора всех ключей?

Maxmaxmахimus 06.10.2012 18:04

нет

pikko 06.10.2012 18:32

жаль,
было бы очень удобно

Maxmaxmахimus 06.10.2012 19:57

Что мешает создать свою удобную функцию?

Gvozd 06.10.2012 20:13

В jquery уже реализовано - $ .data

Maxmaxmахimus 06.10.2012 20:19

Там вводишь регу за место имя ключа и получаешь массив ключей? Я думаю нет, а именно это и нужно ОПу

Gvozd 06.10.2012 20:25

Цитата:

Сообщение от Maxmaxmахimus
Я думаю нет

Я думаю да, и именно поэтому я об этом инструменте написал
Если подробнее, то $.data представляет собой хранилище, где в качестве ключа используется объект(любой) и строка, и туда можно положить любое значение
Например сам jQuery туда кладет все обработчики событий для всех объектов.
Благодаря чему повесить и бросить событие через jQuery можно не только на DOM, но и на любых объектах

pikko 06.10.2012 20:28

Maxmaxmахimus, "создать свою удобную функцию" ничего не мешает, но это работало бы значительно быстрее, если бы было реализовано на уровне языка.

а сейчас ради скорости приходится отказываться от удобного хеша, и делать многомерный массив с отдельным массивом-индексом для него.

UPD: речь идёт о нескольких тысячах записей, если что

Gvozd 06.10.2012 20:41

Возможно для вашей задачи достаточно строкового представления RegExp-а?
Если да, то вообще никакой особой проблемы с производительностью нету

pikko 06.10.2012 20:51

Gvozd,
есть несколько тысяч записей (каждая из нескольких полей), я хочу получить список тех,
первое поле которых подходит, например, под /^кв/ при этом не перебирая их все ( это долго ).


Часовой пояс GMT +3, время: 16:47.