JavaScript null vs undefined

In JavaScript null and undefined are rather strange values, both serve a very similar purpose, which is to indicate the absence of a value.

**Null**

Null is used to assign a reference to an object that you will no longer need or, directly, you want to have the variable declared but initialize it with a value that you still do not know what it will be exactly. In all these cases the best thing to do is to assign a null value.

```javascript
  var miVariable = null;
  console.log(miVariable);

//log null
```

**undefined**

For undefined means that the variable is declared but its value has not yet been defined.

```javascript
  var miVariable
  console.log(miVariable);

//log null
```

Both values are values of type "false", so if you do a non-strict comparison you will get true
undefined, which means that the variable is declared but its value has not yet been defined.

```javascript
if (null == undefined) {
  return true
 }
//log true
```

 and if you do a strict comparison, because they are not really the same, it returns a false:


```javascript
if (null === undefined) {
   return true
 }
return false
//log false
```


leyaim-jimenez
September 21, 2021
