メモ:2次元配列の行列を入れ替える
自分用のメモ。
理解を補助するために作成。
参考サイト:
ワクガンス | JavaScriptの覚書
参考コード:
function transpose(a) { return Object.keys(a[0]).map(function (c) { return a.map(function (r) { return r[c]; }); }); }
※参考サイトより引用
Object.keys(array)
で2次元配列の添字を返す。
これが変換後の行の添字になる。
var array = [[部門コード, 1000.0, 2000.0, 3000.0, 4000.0], [ほげ, 1.0, 4.0, 7.0, 10.0], [ふむ, 2.0, 5.0, 8.0, 11.0], [ぴよ, 3.0, 6.0, 9.0, 12.0]]; console.log(Object.keys(array)); // console: [0, 1, 2, 3, 4]
参考:
Object.keys() - JavaScript | MDN
mapの中でmapを実行すると、2次元配列がかえる。
最初に変換後の行の添字を取り出したのは、縦に読んでいくため。
各行の0番目の値を取り出した配列を作る、行の1番目の値を取り出した配列を作る…を繰り返して、新しい2次元配列を作成。
納得ヽ(=´▽`=)ノ