JAVASCRIPT: Difference between UNDEFINED and NULL

Javascript Undefined vs NULL

Many a times we often get confused on whats the difference between UNDEFINED and NULL.
undefined means a variable has been declared but has not yet been assigned a value. On the other hand, null is an assignment value. It can be assigned to a variable as a representation of no value.
Also, undefined and null are two distinct types: undefined is a type itself (undefined) while null is an object.
Unassigned variables are initialized by JavaScript with a default value of undefined. JavaScript never sets a value to null. That must be done programmatically.

 

  • SheetalD

    ~Thanks, it cleared my confusion…!!!

    • Arun Kumar

      I can give you a better example.

      var a;

      alert(typeof(a));

      var b = null;

      alert(typeof(b));

      Running the above script will result in the following output:
      undefined
      object
      ——————————-
      From the preceding examples, it is very clear that undefined and null are two distinct types:
      undefined is a type itself (undefined) while null is an object

  • Sanjeev

    Thank u… u given me very short answer

  • JIL

    Thanks !!

  • Good explanation, typeof(null) returns object but it’s not an object. It’s a javascript primitive type, this is the conflict in language it self, may be corrected in future of version of JS.

    • Arun Kumar

      I can give you a better example.

      var a;

      alert(typeof(a));

      var b = null;

      alert(typeof(b));

      Running the above script will result in the following output:

      undefined

      object

      ——————————-

      From the preceding examples, it is very clear that undefined and null are two distinct types:

      undefined is a type itself (undefined) while null is an object