我正在阅读正在构建的过程
https://developers.cardano.org/docs/integrate-cardano/listening-for-payments-cli/#process-utxo-table
我坚持这部分的结果:
// Calculate total lovelace of the UTXO(s) inside the wallet address
const utxoTableRows = rawUtxoTable.data.trim().split('\n');
let totalLovelaceRecv = 0;
let isPaymentComplete = false;
for (let x = 2; x < utxoTableRows.length; x++) {
const cells = utxoTableRows[x].split(" ").filter(i => i);
totalLovelaceRecv += parseInt(cells[2]);
}
据我所知,从第一行开始,我们不感兴趣的标题和第二行是第一个被处理的标题.split(" ")
,该表已被拆分为数组中的至少 2 个项目。然后拆分有空格的行,但我不知道过滤器部分的作用。查询表如下所示:utxoTableRows
utxo
.split(" ")
utxo
TxHash | 发送 | 数量 |
---|---|---|
dfb99f8f103e56a856e04e087255dbaf402f3801acb71a6baf423a1054d3ccd5 | 0 | 1749651926 |
如您所见,有两行。我完全迷失在过滤器组件上。我在以下命令中迷失了更多parseInt(cells[2])
。我知道它以某种方式将金额作为字符串并转换为整数。[2] 引用让我失望,因为它不是必须是 [3],因为数量是在该行中拆分的第三个项目?我唯一能想到的是.filter(i => i)
抛出TxHash
,然后将TxIx
(在本例中为 0)cell[1]
和金额(在本例中为 1749651926)保存cell[2]
为字符串。
感谢您的帮助。