From ae6fba94954bac6430902f77b0d1113a98a75b18 Mon Sep 17 00:00:00 2001 From: Evan You Date: Thu, 16 Nov 2023 17:02:17 +0800 Subject: [PATCH] perf: optimize makeMap --- packages/shared/src/makeMap.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/shared/src/makeMap.ts b/packages/shared/src/makeMap.ts index b598704c673..9c4180c1e7a 100644 --- a/packages/shared/src/makeMap.ts +++ b/packages/shared/src/makeMap.ts @@ -9,10 +9,8 @@ export function makeMap( str: string, expectsLowerCase?: boolean ): (key: string) => boolean { - const map: Record = Object.create(null) - const list: Array = str.split(',') - for (let i = 0; i < list.length; i++) { - map[list[i]] = true - } - return expectsLowerCase ? val => !!map[val.toLowerCase()] : val => !!map[val] + const set = new Set(str.split(',')) + return expectsLowerCase + ? val => set.has(val.toLowerCase()) + : val => set.has(val) }