tyl*_*ile 2 javascript typescript angular
我正在尝试获取唯一的用户名及其总时间,但不知道如何实现。我已经做过的是一组唯一的名称,但是不知道如何获取总和。我认为这应该通过使用像ex的字典这样的结构来实现。
Dictionary<string,int>但是这种结构似乎在打字稿中不存在。
let json = [{"User":"Tom Smith","Hours": 6},{"User":"Mark Zuckerberg","Hours": 8},{"User":"Elon Musk","Hours": 12},{"User":"Tom Smith","Hours": 1},{"User":"Tom Smith","Hours": 1}];
for(var i = 0; i < json.length; i++)
{
if(!userNames.find(a => a == json[i].User))
{
userNames.push(json[i].User);
}
}
Run Code Online (Sandbox Code Playgroud)
结果应为:
它叫做Map:
const usernames = new Map<string, number>();
for(const {User, Hours} of json)
usernames.set(User, (usernames.get(User) || 0) + Hours);
console.log([...usernames]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
824 次 |
| 最近记录: |