function

JSONL.parse

function parse(
input: string | ArrayBufferLike | TypedArray<ArrayBufferLike> | DataView<ArrayBufferLike>
): unknown[];

Parse a JSONL (JSON Lines) string into an array of JavaScript values.

If a parse error occurs and no values were successfully parsed, throws a SyntaxError. If values were parsed before the error, returns the successfully parsed values without throwing.

Incomplete trailing values (for example, from a partial chunk) are silently ignored.

When a TypedArray is passed, the bytes are parsed directly without copying if the content is ASCII.

@param input

The JSONL string or typed array to parse

@returns

An array of parsed values

const items = Bun.JSONL.parse('{"a":1}\n{"b":2}\n');
// [{ a: 1 }, { b: 2 }]

// From a Uint8Array (zero-copy for ASCII):
const buf = new TextEncoder().encode('{"a":1}\n{"b":2}\n');
const items = Bun.JSONL.parse(buf);
// [{ a: 1 }, { b: 2 }]

// Partial results on error after valid values:
const partial = Bun.JSONL.parse('{"a":1}\n{bad}\n');
// [{ a: 1 }]

// Throws when no valid values precede the error:
Bun.JSONL.parse('{bad}\n'); // throws SyntaxError