オブジェクトに含まれるプロパティを調べるif-in

配列内の要素を順に処理する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>

結果は次のとおり。