null-safety
example:
const html = `<html> <h1>this is a title</h1></html>`; const doc = new JSDOM(html).window.document; const title = NullSafety.start(doc) .next(o => o.querySelector('h1')) .next(o => o.textContent) .resultAlty('title-for-failed'); console.log(title);// output: this is a title
type-safety:
.nexto.querySelector'h1' // return: HTMLHeadingElement | null .nexto.textContent // argument: HTMLHeadingElement (not nullable *>_<)b! // return: string | null .resultAlty'title-for-failed'; // return: string (not nullable *>_<)b!
recommendation:
Use TypeScript & TypeScript compiler option: strictNullChecks
(or strict
)
{ "compilerOptions": { "strictNullChecks": true, }} // or { "compilerOptions": { "strict": true, }}