Чтобы сгруппировать элементы по ключу, часто приходится сначала вызвать
has(), затем создать пустой массив через set() и снова получить его через get(). Этот шаблон повторяется в кэшах и коллекциях интерфейса.В Svelte 5.57 у реактивной
SvelteMap появились getOrInsert и getOrInsertComputed. Первый возвращает существующее значение или вставляет переданное. Второй вызывает функцию создания только для отсутствующего ключа.Например,
groups.getOrInsertComputed(category, () => []) вернёт массив нужной группы, создав его при первом обращении. При этом значения внутри SvelteMap не становятся глубоко реактивными автоматически: если меняете содержимое массива, нужно отдельно продумать, как интерфейс узнает об обновлении.
