From 156566311b7ab139298ea71e8a4f97c19c1c90cf Mon Sep 17 00:00:00 2001 From: Ryan Cavanaugh Date: Fri, 8 Mar 2019 16:38:02 -0800 Subject: [PATCH] Rewrite fallback hash to be faster --- src/compiler/sys.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/compiler/sys.ts b/src/compiler/sys.ts index 33283c93803..665c7383139 100644 --- a/src/compiler/sys.ts +++ b/src/compiler/sys.ts @@ -8,8 +8,11 @@ namespace ts { */ /* @internal */ export function generateDjb2Hash(data: string): string { - const chars = data.split("").map(str => str.charCodeAt(0)); - return `${chars.reduce((prev, curr) => ((prev << 5) + prev) + curr, 5381)}`; + let acc = 5381; + for (let i = 0; i < data.length; i++) { + acc = ((acc << 5) + acc) + data.charCodeAt(i); + } + return acc.toString(); } /**