3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

二次元連想配列 foreachで取り出す(Javascript)

Posted at

Javascriptの二次元連想配列の要素をforeachで1つずつ取得する流れについて自身の理解を整理。

let NBA =[
            {region:'oklahoma', team:'Thunder', player:'KD'},//キー値=[0]
            {region:'sanantonio', team:'Spurs', player:'parker'},//キー値=[1]
            {region:'washington', team:'Widzards', player:'hachimura'}//キー値=[2]
            ]
for (let count = 0; count < NBA.length; count++) {
            Object.keys(NBA[count]).forEach(function(key) {
            console.log(key + '=' + NBA[count][key]);
            });
        }

変数countを二次元連想配列NBAのindex番号(キー値)として使用する。ループする条件としてcountが二次元連想配列NBAのlength(=3)未満とすることでキー値が[0]~[2]までの各配列を扱える。
Object.keys(NBA[count])によって[0]~[2]までの各配列毎にキー値を取り出してforEachで1つずつ受け取り処理をする。

例.count=0の時

Obkect.keys(NBA[0])となる事から、
配列[0]{region:'oklahoma', team:'Thunder', player:'KD'}のキー値であるregion, team, playerが取り出される。
配列[0]においてregionが取り出された時にはコールバック関数の仮引数にregionが渡される為、console.logで以下のように表示される。

region=oklahoma

上記のようにoklahomaとなるのはcount=0によってNBAから連想配列[0]が取得されており、且つその配列のキー値がregionである要素の値に該当する為。
残りのNBA[1], NBA[2]も同じように一つずつ取得された連想配列からそれぞれのキー値に対応する要素の値が出力される。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?