我有一个数据数组,它是 ["Bet:W:2:23:, "Bet:P:6:2", "Bet:W:5:3"]
。
[0] 在#2 上投注 $23 获胜 [1] 在#6 上投注 2 美元以放置等
我如何安排数据,以便我可以将赌注添加到赌注中,然后将赌注分配给支持获胜者的每个人?
我已经尝试遍历并分隔“:”。这意味着我可以创建投注池,但这意味着我失去了投注和他们投注的马之间的联系。我假设为了保持这种连接,我需要创建一个对象,但我一直无法弄清楚如何去做。
最佳答案
您正在寻找 map .
const bets = ["Bet:W:2:23", "Bet:P:6:2", "Bet:W:5:3"].map(b => {
const bet = b.split(':');
return {
type: bet[1],
number: bet[2],
amount: parseInt(bet[3], 10)
};
});
一旦您的数据采用更易于使用的形式,您就可以做其他有用的事情,例如使用 reduce 查找池数量:
const pool = bets.reduce((sum, bet) => sum + bet.amount, 0);
关于javascript - 将数据从数组排列到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45384138/