覆盖数组中的对象值

问题描述 投票:-1回答:1

我在for循环中创建了一个对象数组。但是,如果键值相同,则每次迭代中该对象都会在数组中被覆盖。

 var applicationTabId = {};

 for (var i = 0; i < tabs.length; i++) {
      var taburl = tabs[i]['url'];
      currentApp = findApp(taburl);
      var tabid = tabs[i]['id']; 
      applicationTabId[currentApp]= tabid;
}

console.log(applicationTabId);

在第一个循环中{facebook:15}下一个循环{github:17}下一个循环{facebook:18}

但在下一个方面,它被覆盖为{github:17,facebook:18}我需要o / p作为{facebook:15,github:17,facebook:18}

javascript arrays overwrite
1个回答
0
投票

Javascript对象不允许重复的键。您将必须将值存储为对象数组,或者如果需要实现,则将键值对存储在该对象对为数组的地方。

© www.soinside.com 2019 - 2024. All rights reserved.