Skip to content

Commit e4eee2c

Browse files
committed
fix(perf): use if in toggle_class instead of dynamic property access shenanigans
This is about 10% faster in Chrome, likely due to JITs being able to do a better thing Closes sveltejs#8629 (is a rework of)
1 parent 3bc791b commit e4eee2c

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/runtime/internal/dom.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -753,7 +753,11 @@ export const resize_observer_device_pixel_content_box = /* @__PURE__ */ new Resi
753753
export { ResizeObserverSingleton };
754754

755755
export function toggle_class(element, name, toggle) {
756-
element.classList[toggle ? 'add' : 'remove'](name);
756+
if (toggle) {
757+
element.classList.add(name);
758+
} else {
759+
element.classList.remove(name);
760+
}
757761
}
758762

759763
export function custom_event<T = any>(type: string, detail?: T, { bubbles = false, cancelable = false } = {}): CustomEvent<T> {

0 commit comments

Comments
 (0)