From: Evan You Date: Thu, 16 Nov 2023 09:02:17 +0000 (+0800) Subject: perf: optimize makeMap X-Git-Tag: v3.4.0-alpha.2~49 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ae6fba94954bac6430902f77b0d1113a98a75b18;p=thirdparty%2Fvuejs%2Fcore.git perf: optimize makeMap --- diff --git a/packages/shared/src/makeMap.ts b/packages/shared/src/makeMap.ts index b598704c67..9c4180c1e7 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) }