如何让activeDealers保留原数组顺序并同步更新dealer状态?
问题与需求
我拥有两个数组 activeDealers 和 normalDealers,初始代码如下:
let normalDealers = [ { nickname: 'one', inactive: false, dealer: true }, { nickname: 'two', inactive: false, dealer: false }, { nickname: 'three', inactive: false, dealer: false } ] activeDealers = [...normalDealers]
随后对 normalDealers 执行以下操作:
if (normalDealers.length > 1) { const prev = normalDealers.shift(); normalDealers.push(prev); }
操作完成后,normalDealers 的内容变为:
[ { nickname: 'two', inactive: false, dealer: false }, { nickname: 'three', inactive: false, dealer: false }, { nickname: 'one', inactive: false, dealer: true } ]
接着修改 normalDealers 第0个索引的对象,修改后该对象为:
{ nickname: 'two', inactive: false, dealer: true }
此时 normalDealers 的完整内容是:
[ { nickname: 'two', inactive: false, dealer: true }, { nickname: 'three', inactive: false, dealer: false }, { nickname: 'one', inactive: false, dealer: false } ]
我需要让 activeDealers 既保留最初的数组顺序,又同步更新后的 dealer 状态,预期输出为:
[ { nickname: 'one', inactive: false, dealer: false }, { nickname: 'two', inactive: false, dealer: true }, { nickname: 'three', inactive: false, dealer: false } ]
内容的提问来源于stack exchange,提问作者planet hool
相关产品推荐
相关产品推荐

