Skip to content

Commit 1a5cf6f

Browse files
authored
perf: improve get_setters cache (#13343)
1 parent de157ee commit 1a5cf6f

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

packages/svelte/src/internal/client/dom/elements/attributes.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -184,8 +184,7 @@ export function set_attributes(
184184
next.class = next.class ? next.class + ' ' + css_hash : css_hash;
185185
}
186186

187-
var setters = setters_cache.get(element.nodeName);
188-
if (!setters) setters_cache.set(element.nodeName, (setters = get_setters(element)));
187+
var setters = get_setters(element);
189188

190189
// @ts-expect-error
191190
var attributes = /** @type {Record<string, unknown>} **/ (element.__attributes ??= {});
@@ -356,8 +355,9 @@ var setters_cache = new Map();
356355

357356
/** @param {Element} element */
358357
function get_setters(element) {
359-
/** @type {string[]} */
360-
var setters = [];
358+
var setters = setters_cache.get(element.nodeName);
359+
if (setters) return setters;
360+
setters_cache.set(element.nodeName, (setters = []));
361361
var descriptors;
362362
var proto = get_prototype_of(element);
363363

0 commit comments

Comments
 (0)