From 0c28cc8aceb5137b67055c3c7b243bbb416eb758 Mon Sep 17 00:00:00 2001 From: Frazer Smith Date: Thu, 6 Mar 2025 09:22:37 +0000 Subject: [PATCH] fix(index): return `undefined` on error instead of `null` --- index.js | 2 +- test/index.test.js | 4 ++-- types/index.d.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index ebe9ba1..3938c00 100755 --- a/index.js +++ b/index.js @@ -113,7 +113,7 @@ function safeParse (text, reviver) { try { return _parse(text, reviver, { safe: true }) } catch (_e) { - return null + return undefined } finally { Error.stackTraceLimit = stackTraceLimit } diff --git a/test/index.test.js b/test/index.test.js index 4ff4a41..7c8b809 100644 --- a/test/index.test.js +++ b/test/index.test.js @@ -432,10 +432,10 @@ test('safeParse', t => { t.end() }) - t.test('returns null on invalid object string', t => { + t.test('returns undefined on invalid object string', t => { t.strictEqual( j.safeParse('{"a": 5, "b": 6'), - null + undefined ) t.end() }) diff --git a/types/index.d.ts b/types/index.d.ts index 5d22d4b..fe38cc3 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -37,7 +37,7 @@ declare namespace parse { * * @param text The JSON text string. * @param reviver The `JSON.parse()` optional `reviver` argument. - * @returns The parsed object, or `null` if there was an error or if the JSON contained possibly insecure properties. + * @returns The parsed object, or `undefined` if there was an error or if the JSON contained possibly insecure properties. */ export function safeParse (text: string | Buffer, reviver?: Reviver | null): any