Re:Start jQuery #004

配列って大事なんだよ。うん。phpなんか配列の関数めちゃめちゃ多いからかなり助かったりするんだよね。

JavaScriptには配列とオブジェクトっていう、列挙可能な型がある。列挙して格納すると言うことは、順に取り出すと言うことだ。その取り出し方は、配列とオブジェクトで違う。

配列はブラケット記号である[]で囲い、オブジェクトはブレイスである{}で囲う。中身はそれぞれカンマである,で区切る。phpみたいに最後にコンマがあってもパースするが、エディタによっては(JsLint、JsHintなど)エラーとして扱われる。

まぁ今の時代ではどちらでもいい気もする。

イテレート

配列もオブジェクトもイテレートが可能。よくfor文で使われるiはイテレートのiなので、なじみがあると思う。

JavaScript

forEachを使う。

配列

値をずらずら一次元で書いておく。

値、インデックス番号*が表示された。
tmp00156

オブジェクト

連想配列のように組み立てておく。

エラー。

オブジェクトはforEachではなくfor inを使う。

キー、値が表示された。

tmp00158

jQuery

$.each()を使う。

配列

JavaScriptのように値、インデックス番号ではなく、逆のインデックス番号、値になる。
tmp00159

オブジェクト

こちらはJavaScriptと同じく、キー、値で表示された。

tmp00160

UnderscoreJS

UnderscoreJSというのは、jQueryでいう$のように、便利な機能を_オブジェクトにぶち込んだライブラリである。BackboneJSなどのフレームワークでは必須ライブラリになってたりするし、jQueryとともに一緒に使ってる人は多い。

phpのように配列の扱いに長けてる

配列

素のJavaScriptと同じく、値、インデックス番号が表示された。

tmp00161

オブジェクト

こちらは素のJavaScriptの配列と同じく、値、キーの順で表示された。
配列と一貫性が保たれていることか。

そして値はクォートされた。

tmp00162

結論

thisに気をつければ好きなの使えばいいんじゃないですかね。