首页 > 解决方案 > 在 React 中的 For 循环中求和数字

问题描述

我有一系列数据,其中包含一个数组(json 文件)中的一些对象,它将由 fetch() 请求显示。正如您在{this.renderCountETotal(item)}我有一个for loop,我想对数字求和for loop但返回我NaN

   class App extends React.Component{
   constructor(props,context){
    super(props,context);
    this.state={
        data:[],
     }
    }
       .
       .
       .
       .
       .
render() {
  const {data} = this.state;
  const renderInvoicesTotal =data.map((item, i) => {
        return   <span>
                    {this.renderCountETotal(item)}
                 </span>
     })
 return (
     <div>
       {renderInvoicesTotal}
  </div>
   )
  }
renderCountETotal(element){
  let lenInfo=element.byproducts.length
  let valueAdded = 0
  for(let i = 0 ; i < lenInfo ; i++){
    let count= parseInt(element.byproducts[i].count)
    valueAdded += count
   }
    valueAdded = parseInt(valueAdded)
    console.log(valueAdded) ////return NaN ////
    return valueAdded
  }
}
ReactDOM.render(<App/>, document.getElementById('Result'))

标签: reactjs

解决方案


尝试用这个替换 rendercountETTotal 方法:

renderCountETotal(element)
   {
  let valueAdded = 0
  let count = 0
  for(let i = 0 ; i < element.byproducts.length ; i++)
  {
    count= parseInt(element.byproducts[i])
    valueAdded += count
  }
    return valueAdded
 }

推荐阅读