如何修改从随机数组中选中的Card对象的state属性?
修改随机抽取卡牌的state属性
你只需先调用gachaCard()获取随机选中的卡牌实例,再直接修改它的state属性即可,和你修改指定卡牌的逻辑完全一致:
// 获取随机卡牌 const randomCard = gachaCard(); // 修改state属性 randomCard.state = 3; // 查看修改后的卡牌信息 console.log(randomCard);
原理说明
gachaCard()返回的是collectibles数组里的卡牌对象引用,修改这个引用的属性会直接同步到原数组中的对应卡牌,和你修改card01.state的底层逻辑完全相同。
扩展封装(可选)
如果需要多次执行抽取并修改操作,可以把逻辑封装成函数:
function drawAndUpdateCard(newState) { const targetCard = gachaCard(); targetCard.state = newState; console.log(`已将卡牌【${targetCard.name}】的state更新为${newState}`); return targetCard; } // 使用示例 drawAndUpdateCard(3);
内容的提问来源于stack exchange,提问作者Jean
相关产品推荐
相关产品推荐

