IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

こんなに JavaScript やってるのに知らなかった基本文法「if in」

ifin なんてあったのね。。。

知らなかった!

使い分け

3番めが if in

オブジェクトが真か偽か
if (obj.property) {
    // ...
}
オブジェクトプロパティがあるかは置いといて undefined ではないことを確かめる
if (typeof obj.property == 'undefined') {
    // ...
}
オブジェクトプロパティがあるか。
if ('property' in obj) {
    // ...
}
オブジェクト自体(プロトタイプを含まない)にプロパティがあるか
if (obj.hasOwnProperty('property')) {
    // ...
}

まとめ

いっぱいあるなあ。
大抵、一番上のでいいがいろいろ細かい条件があるとたまにどれも必要になるときがある。
いままでは、if in を知らなかったので困ったこともあったなあ。