为了账号安全,请及时绑定邮箱和手机立即绑定

有没有更好的方法来查找数组中对象的属性

有没有更好的方法来查找数组中对象的属性

回首忆惘然 2022-08-18 10:49:47
我正在提高我的编码技能。我写了一个代码,它工作正常。但我认为它可以写得更好。以下是代码和一些解释,我使用以下代码来表示名为事务的数组setStateuseEffect(() => {  TransactionService.getTransactions().then(data => {    setTransactions(data.transactions);  });}, []);我需要对事务数组中的对象求和,所以我写了这个代码。let a = transactions,  total = 0;for (var i = 0; i < a.length; i++) {  total += a[i].amount;  console.log('total', total);};然后,通过像这样调用{total}来使用代码<h1>{total}</h1>然后我需要数组中最后一个对象中的属性值,所以我写了这个var array1 = transactions;var first = array1[array1.length - 1];console.log(first);const payment = { ...first };后来就这样用了<h1>{payment.amount}</h1>代码工作正常 请任何关于如何写得更好的想法。谢谢
查看完整描述

1 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

这对我来说更好。谢谢


    

  const lastTransaction = transactions[transactions.length - 1];

  let lastPayment = ({ ...lastTransaction }).amount;

  const today = new Date();

  let lastMonth = today.getMonth() - 1;

  let relevantYear = today.getYear();

  let thisMonth = today.getMonth();


  const lastMonthTransactions = transactions.filter(i => {

  const date = new Date(i.date);

    return date.getMonth() === lastMonth && date.getYear() === relevantYear;

  }).reduce((prev, curr) => prev + parseFloat(curr.amount), 0)


查看完整回答
反对 回复 2022-08-18
  • 1 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信