undefined は予約語じゃないんで、と指摘された話

2020-11-05

JavaScript でこんなコードを書いて PR を上げたのですが。

return hoge === undefined

それに対して「 undefined は予約語でないため typeof hoge === "undefined" と書くようにしてください」と指摘が入りました。

つまりこういうことがありえちゃうってことですね。

const hoge = "hoge";
const undefined = "hoge";

// true を返してしまう
return hoge === undefined;

で、厳密に書くならこうすべきだよ、ということですね。

const hoge = "hoge";

// ちゃんと false を返す
return typeof hoge === "undefined";

JavaScript の予約語なんて意識したことがなかったので、これは勉強になりました。

久しぶりに鋭い指摘を頂けました、ありがたやー。

undefined は予約語じゃないんで、と指摘された話 - kk-web