timeoutId === 'number' ではなく timeoutId !== 'undefined' とするのはなぜですか?

undefined としているのは何に関心があるのかをコードに落としこむためです。
2022年2月18日
ユーザー
if(typeof timeoutId !== 'undefined') {
          clearTimeout(timeoutId);
}

上記の部分ですが、 typeof を使って timeoutId に数値が入っているか調べるのかなと理解したのですが

if(typeof timeoutId === 'number') {
          clearTimeout(timeoutId);
}

のように === で数値が入っているのを確認する方法は良くないのでしょうか?
また、

if(typeof timeoutId == 'number') {
          clearTimeout(timeoutId);

入っていることを確認する場合 == (等価演算子)でもありなのでしょうか?

派生の内容なので 2 つ伺いましたが、複数質問に含まれてましたら申し訳ございません。

この回答を見るにはプレミアムサービスへの登録が必要です

プレミアムサービスとは?