Hacker News new | ask | show | jobs
by sjs 4992 days ago
You can check for many things on either side. Even if you're paranoid checking 2-3 of these should suffice. There's nothing bullet-proof if someone is trying to fool the test.

In the browser: window, window === this, document, navigator, many JS APIs such as Audio, Canvas, many DOM and CSS objects, etc. The top level is littered with these things.

Node: module, process, require.main === module, Buffer.