Javascript 如何在react js中增加.map()中的变量

Javascript 如何在react js中增加.map()中的变量,javascript,reactjs,Javascript,Reactjs,我有一个react代码,它获取所有评估年度,并在下拉列表中填充,但在显示时,我想将其增加一个 假设评估年度为2020年,我想在下拉列表中显示为FY:2020-2021 下面的代码填充在下拉列表中,当我尝试递增时,它会附加1,而不是添加1 <select class="form-control" name="selected_FY" value="selected_FY" >

我有一个react代码,它获取所有评估年度,并在下拉列表中填充,但在显示时,我想将其增加一个

假设评估年度为2020年,我想在下拉列表中显示为FY:2020-2021

下面的代码填充在下拉列表中,当我尝试递增时,它会附加1,而不是添加1

   <select 
      class="form-control"  
      name="selected_FY"
      value="selected_FY" >

     {
         this.state.assessmentyears.map((fin, key) =>{
         return (  
          <option key={key} value={fin.year}>FY: {fin.year}-{fin.year+1}</option> 
          )
          })
       }                                  
 </select> 

{
此.state.assessmentyears.map((fin,key)=>{
报税表(
财政年度:{fin.year}-{fin.year+1}
)
})
}                                  

问题在于您正在向字符串值添加“1”。您应该在递增之前解析它

<select 
      class="form-control"  
      name="selected_FY"
      value="selected_FY" >

     {
         this.state.assessmentyears.map((fin, key) =>{
         return (  
          <option key={key} value={fin.year}>FY: {fin.year}-{Number(fin.year)+1}</option> 
          )
          })
       }                                  
 </select> 

{
此.state.assessmentyears.map((fin,key)=>{
报税表(
财政年度:{财政年度}-{数字(财政年度)+1}
)
})
}                                  

更换以下代码

<option key={key} value={fin.year}>FY: {fin.year}-{Number(fin.year)+1}</option> 
FY:{fin.year}-{Number(fin.year)+1}

问题在于JavaScript中的自动类型转换,如果值的类型为
字符串
,则尝试
+1
,该值将自动更改为
字符串
,因此计算将
20201
(如果值为字符串
2020


解决方案非常简单,您只需更改
值的类型,如果您想添加1,您可以通过
Number()
,将类型从字符串更改为数字,如
Number('2020')+1
将是
2020

这是否回答了您的问题?似乎
fin.year
string
而不是
number
。您必须首先将其转换为一个数字,例如,
number(fin.year)+1
@theblackgigant no它是一个用于reactjs代码的数字,但它指出了我所犯的错误,谢谢