Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

can you give an example of where typescript fails to protect you against nulls in your own code? (apart from the use of any


You can turn off strictNullChecks, and there's also noUncheckedIndexAccess which unfortunately isn't enabled by default even in strict mode. You can also introduce flaws via @ts-ignore, casting, etc.

Still, typescript equips you to catch these errors, even if you can technically circumvent it. In practice it can be nearly bullet-proof if you follow good practices.


Aside from explicitly turning off null safety and tricky use of casting, an easy example is interfacing with JS.

If you're using either a library that wasn't written in pure TS (maybe JS or JS with .d.ts) or interacting with some unconverted JS from your own codebase, you can easily pass a null through entirely by accident. The problem really stems from the JS end of things, but 9 times out of 10 you're going to be touching JS at _some_ level when using TS so I think it's fair to point out this gap.


Abusable things:

- !

- as x

- @ts-ignore




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: