配列内の要素を順に処理するfor-inはたびたび使うことがあるが、オブジェクトに含まれるプロパティを調べるif-inなるものがあることを知ったので記録しておく。 inは演算子であり、オブジェクトに該当するプロパティが含まれていれば”true”、そうでなければ”false”を返す。JavaScriptのオブジェクトは連想配列でできているので、連想配列に含まれるキー(オブジェクトではプロパティ)を調べることもできる。
サンプル
<script type="text/javascript"> var obj = {阿部:'真之介',小泉:'純一郎',八代:'数馬',新島:'八重'}; var youname = '小泉'; if(youname in obj){ document.write(youname + 'はobjに存在する' + '<BR>'); } else{ document.write(youname + 'はobjに存在しない' + '<BR>'); } </script>
結果は次のとおり。