In computer science, a null value represents a reference that points, generally intentionally, to a nonexistent or invalid object or address. The meaning of a null reference varies among language implementations.

In JavaScript, null is marked as one of the primitive values, cause it's behaviour is seemingly primitive. But from the other side it purpose is not so primitive as every Object is derived from null value and therefore typeof checker returns an "object" mark for it:

typeof null === 'object'; // true

Learn more

General knowledge

Technical reference