diff --git a/src/shark/LZString.ts b/src/shark/LZString.ts index e83b3e0..dc961a8 100644 --- a/src/shark/LZString.ts +++ b/src/shark/LZString.ts @@ -46,16 +46,16 @@ export class LZString extends StaticClass { let value: number; for (const contextC of uncompressed) { - if (!Object.keys(contextDictionary).includes(contextC)) { + if (!(contextC in contextDictionary)) { contextDictionary[contextC] = contextDictSize++; contextDictionaryToCreate[contextC] = true; } const contextWC = contextW + contextC; - if (Object.keys(contextDictionary).includes(contextWC)) { + if (contextWC in contextDictionary) { contextW = contextWC; } else { - if (Object.keys(contextDictionaryToCreate).includes(contextW)) { + if (contextW in contextDictionaryToCreate) { if (contextW.charCodeAt(0) < 256) { for (let i = 0; i < contextNumBits; i++) { contextDataVal <<= 1; @@ -137,7 +137,7 @@ export class LZString extends StaticClass { } if (contextW !== "") { - if (Object.keys(contextDictionaryToCreate).includes(contextW)) { + if (contextW in contextDictionaryToCreate) { if (contextW.charCodeAt(0) < 256) { for (let i = 0; i < contextNumBits; i++) { contextDataVal = contextDataVal << 1;