このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

JavaScriptのfor-in文は、どうにも馴染めない

JavaScriptにおいて、


>>> var a = {foo:1, bar:2, baz:3}
undefined

>>> for (x in a) {console.log(x)}
foo
bar
baz

↑の挙動にはなんとか慣れたのですが、次の状況だといまだにハマります。


>>> var b = [1, 2, 3]
undefined

>>> for (x in b) {console.log(x)}
0
1
2

オブジェクトでも配列でも、そのキー(プロパティ名または配列インデックス)を返す点で一貫性があるのですが、for (変数 in リスト) がリスト項目の(インデックス番号ではなくて)値を返す例が多いので、どうも勘違いしてしまうのです。