Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有办法重构具有相似名称的变量?_Javascript_Reactjs - Fatal编程技术网

Javascript 有没有办法重构具有相似名称的变量?

Javascript 有没有办法重构具有相似名称的变量?,javascript,reactjs,Javascript,Reactjs,似乎是一种非常不干净利落的声明变量的方式。有没有一种方法可以执行类似于finalscore${x}的操作并使用循环 您可以使用this.state[“finalScore”+x]来访问变量您可以使用this.state[“finalScore”+x]来访问变量而不是像finalScore${x}那样保留18个键,您应该像 const { finalScore1, finalScore2, finalScore3, finalScore4, finalScore5, finalScore6,

似乎是一种非常不干净利落的声明变量的方式。有没有一种方法可以执行类似于
finalscore${x}
的操作并使用循环

您可以使用
this.state[“finalScore”+x]
来访问变量

您可以使用
this.state[“finalScore”+x]
来访问变量

而不是像
finalScore${x}
那样保留18个键,您应该像

const { finalScore1, finalScore2, finalScore3, finalScore4, finalScore5, finalScore6,
        finalScore7, finalScore8, finalScore9, finalScore10, finalScore11, finalScore12,
        finalScore13, finalScore14, finalScore15, finalScore16, finalScore17, finalScore18
 } = this.state

然后您可以访问
this.state.finalScores[x]
。您还可以循环finalScore状态数组并获取值,而不是将18个键保留为finalScore${x},您应该保留一个类似

const { finalScore1, finalScore2, finalScore3, finalScore4, finalScore5, finalScore6,
        finalScore7, finalScore8, finalScore9, finalScore10, finalScore11, finalScore12,
        finalScore13, finalScore14, finalScore15, finalScore16, finalScore17, finalScore18
 } = this.state

然后您可以访问
this.state.finalScores[x]
。您还可以在finalScores状态数组上循环并获取值

首先不要将值存储在
状态
的离散属性中;存储阵列:

state = {
   finalScores: []
}

然后,您可以轻松地通过数组循环,通过索引访问分数。

首先不要将值存储在
状态的离散属性中;存储阵列:

state = {
   finalScores: []
}

然后,您可以很容易地在数组中循环,按索引访问分数。

Hacky。我喜欢,哈奇。我喜欢它。由于客户想要保存数据的方式,我没有选择,要么是这30行冗余代码,要么是另外30行冗余代码。由于客户想要保存数据的方式,我没有选择,要么是这30行冗余代码。