JS: コンテナとしての Object のキーの列挙
常にこう書くことにした。
for (var k in obj) if (obj.hasOwnProperty(k)) {
alert(obj[k]);
}今までは
for (var k in obj) {
if (!obj.hasOwnProperty(k)) continue;
alert(obj[k]);
}とか書いてたけど、! を書くのを忘れて、いったりきたりしてしまうのでめんどかった。
ちなみに
for (var k in obj) {
if (obj.hasOwnProperty(k)) {
alert(obj[k]);
}
}はインデントが増えるから嫌だ。
hasOwnProperty は長いけど、慣れれば (主に autocomplpop.vim のおかげで) 気にならない。