It&#x27;s not consistent, calling those functions with `new` returns an object representation of the primitive value (you can get the primitive value by calling .valueOf or by coercing). It does not cause an error.