我想創建一個新的對象,通過下面的循環,並結合具有類型的對象的值?JavaScript對象文字,結合在同一文字內的對象的值
所以我有這樣的事情:
var data = [{
transID: 123,
repId: 86,
profit: 117.3,
expense: 96.76 },
{
transID: 124,
repId: 35,
profit: 47.39,
expense: 15.15 },
{
transID: 125,
repId: 86,
profit: 62.62,
expense: 15.17 }]
,所以我需要同創建如上一個新的陣列,只爲每個代表我想要一個對象,利潤和費用等的總和(所以沒有無論是TRANSID):
[{
repId: 86,
profit: 179.92,
expense: 111.93 },
{
repId: 35,
profit: 47.39,
expense: 15.15 }]
我剛學(去容易,這可能是完全錯誤的),但我已經嘗試了諸如:
var otherData = [];
for (var i = 0; i < data.length; i++) {
var thisDataObj = data[i];
for (var j = 0; j < data.length; i++) {
var thisComparedData = data[j]; // maybe a ridiculous approach ??
if(thisDataObj.repId == thisComparedData.repId) {
if(thisDataOjb.transId != thisComparedData.transId) {
// struggling with this part if this is event the right approach
// the loop is bad because it will recount
}
}
}
所以沒有顯示我在那個循環中試過的東西,我很確定這只是錯誤的,因爲它會重新計算值,如果我試圖總結,創建對象並推送它。只是不確定什麼是更好的方法?
任何幫助,非常感謝。
這真的幫助了我....我學到了新的東西,很酷。謝謝! – Justin