javascriptのin演算子
for(var i in obj){ … }
みたいな感じであるオブジェクトの中をforで走査する方法は知ってた。が、なんとなくこのforに使われてる「in」は何モノなのかが分からずモヤモヤしてたんだけど、このinて演算子なんだと今知った。
2011/10/11追記
http://d.hatena.ne.jp/teramako/20110304/p1
全然in演算子じゃなかったみたいです。in演算子はin演算子で存在するけど、for(... in ...)は特殊構文とのことです。
in演算子
in 演算子は、指定されたプロパティが指定されたオブジェクトにある場合に true を返します。構文は以下のとおりです。
propNameOrNumber in objectName
https://developer.mozilla.org/ja/JavaScript/Guide/Operators/Special_Operators#in
以下のような感じで確かめることができる。
var a={b:1}; alert(b in a); //true
ただ実用性はどうなんだろうか?
var a={b:1}; if(a.b){ alert(true); }
ってしたほうが明らかに分かりやすいからなぁ…inのほうが文字数少なくて済むってのはあるけど。