FC2ブログ
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
for in の罠
JavaScript の for in について。

配列を操作しようと思って、
次のように書いてもうまくいかない。
for(i in [1,'b']){ console.log(i) }
↑を実行すると

0
1

と表示される。


言い過ぎかもしれないが、JavaScriptというのは全部、ハッシュでできていると考えてよい。そこで、for in は、ハッシュのキーを取り出してくれるようにできている。JavaScriptの言葉で言うと、プロパティを取り出してくれる。
そこで、
a = [1,'b']
for(i in a){ console.log(a[i]) }
と、すると、

1
b

と、配列の中身を取得することができる。



でも、これではなにかうっとうしい。配列を一気に操作する良い方法はないだろうか?
ということで偉い人が次のような方法(each関数)を思いつきました。
Array.prototype.each = function(f){
   for(i=0;i<this.length;i++){
      f(this[i])
   }
};

[1,'b'].each( function(i){ console.log(i) } )


参考資料: http://d.hatena.ne.jp/amachang/20070202/1170386546
スポンサーサイト
コメントを投稿する
Name:
URL:
Comment:

秘密:管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL
この記事にトラックバックする(FC2ブログユーザー)
ブログ検索

プロフィール

ビンゴ中西
Perlが好きである。
プログラミング言語のほとんどは独学。独学の過程で多くのプログラム仲間にも色々教わりました。

FC2カウンター

カレンダー

10 | 2018/11 | 12
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

ブロとも申請フォーム

この人とブロともになる

| ホーム |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。