Undefined vs null vs NAN


undefined


値が割り当てられていません.「未定義の状態」を表す値です.
let jelly;
jelly;
// **Uncaught ReferenceError: jelly is not defined at ~**
ゼリー変数に値が割り当てられていないため、undefinedエラーが発生しました.
[[ReferenceError]](https://velog.io/@djdu4496/Collection-variousErrors)

null


「存在しない」を表す値

NaN(Not A Number)


「数値ではありません」を表す値.
```
> Math.pow(5, "hello")
< NaN
//数字や文字列は計算できないので、NANが出力されます.
```

Chrome Developerコンソールで 変数を宣言して割り当てるとundefinedが出力されるのはなぜですか?

> console.log("Hello World");
< undefined
console:log関数に渡される文字列は、コンソールウィンドウに出力されます.
最後にundefinedが現れたのは
これは、コンソールウィンドウにコンソールウィンドウが作成され、コンソールウィンドウで関数を実行すると、関数の戻り値が後で出力されるためです.
console.log関数には値が返されません.