javascript通过修改现有数组来构造新数组

javascript通过修改现有数组来构造新数组,javascript,Javascript,我有以下数组 [“A”、“D”、“D”、“A”] 我只能修改数组的现有索引。而不是完全构造一个新数组 假设我想将第一个索引修改为D。它应该返回[“D”,“D”,“D”,“A”] const result=`[“A”、“D”、“D”、“A”]` 常数值=0 对于(变量i=0;ii===value?“D”:e);,因为每次我猜react都需要一个新数组。你在做比较==,我认为你的意思是在做赋值=。你根本不需要循环,只要这样就足够了:结果[index]=“D”(例如结果[0]=“D”)@ibrahim

我有以下数组

[“A”、“D”、“D”、“A”]

我只能修改数组的现有索引。而不是完全构造一个新数组

假设我想将第一个索引修改为D。它应该返回
[“D”,“D”,“D”,“A”]

const result=`[“A”、“D”、“D”、“A”]`
常数值=0
对于(变量i=0;i

如何修改索引并返回修改后的数组。

您根本不需要循环,只要这样就足够了:
result[index]=“D”
(例如
result[0]=“D”
)@ibrahimmahrir我需要一个循环,因为这是我的react钩子的状态。如果要创建新数组,您不需要循环:
return result.map((e,i)=>i===value?“D”:e);
,因为每次我猜react都需要一个新数组。你在做比较
==
,我认为你的意思是在做赋值
=
。你根本不需要循环,只要这样就足够了:
结果[index]=“D”
(例如
结果[0]=“D”
)@ibrahimmahrir我需要一个循环,因为这是我的react钩子的一个状态。如果你想创建一个新数组,你不需要循环:
返回结果。map((e,i)=>i==value?“D”:e);
,因为react每次我猜都需要一个新数组。你在做比较
==
,我认为你想做赋值的地方
=
const result = `["A","D","D","A"]`
const value = 0

for (var i = 0; i < result.length; i++) {
    if (value === i) {
         if (result[i] === 'A') {
             result[i] === 'D'
    } else {
         result[i] === 'A'
    }
}