概要
連想配列にある値を使って何か計算(変更)し、新しい値としてキーに追加したい場合のやり方。
やり方
まずは、定義した連想配列から取得した値(value
)がundefinedの場合、初期化しておく。
その後、条件に当てはまる値があればをmapからgetとした値(value
)のa
,b
の項目に値を入れ、最終的にそれらの値をsetする。
const DataMap = new Map(); let value = DataMap.get(keyData); if(!value) { value = { a: 0, b: 0, abRate: null }; } if(//something) { value.a = xxx; } if(//something) { value.b = yyy; } DataMap.set(keyData, value); }
全てのデータ(value.a
,value.b
が入ったとみなせる箇所にて、
計算を行い、value.abRate
に値を代入する。
for of
を使うには、連想配列の[key, data]
をtemp変数とし、of 連想配列
とすることで、連想配列の中身をループすることが可能
for(let [key,data] of DataMap) { data.abRate = data.a / data.b; }