Javascript 如何在循环中记录不同的状态元素
我试图在我的状态中循环使用两个键值对。它们的名字非常相似,唯一的区别是一个在白天结束,另一个在晚上结束。下面是我现在的项目的一个简化示例。我的目标是让日志显示以下结果:Javascript 如何在循环中记录不同的状态元素,javascript,reactjs,state,Javascript,Reactjs,State,我试图在我的状态中循环使用两个键值对。它们的名字非常相似,唯一的区别是一个在白天结束,另一个在晚上结束。下面是我现在的项目的一个简化示例。我的目标是让日志显示以下结果: state = { energyType: "Electricity", meterRate: "oneRate", firstEnergyAmountDay: 1, firstEnergyAmountNight: 2, } let days if (t
state = {
energyType: "Electricity",
meterRate: "oneRate",
firstEnergyAmountDay: 1,
firstEnergyAmountNight: 2,
}
let days
if (this.state.energyType === "Electricity" && this.state.meterRate === "twoRate") {
days = ["Day", "Night"]
} else {
days = ["Day"]
}
days.map(day => {
console.log(this.state.firstEnergyAmount + day);
})
现在我的日志刚刚返回:
未定义
未定义的光
我想让日志告诉我:
一,
2要计算对象的属性,需要使用方括号和字符串
console.log(this.state["firstEnergyAmount" + day])
因此,这将把字符串连接在一起,生成
“FirstEnergyMountDay”
或“FirstEnergyMountNight”
,然后方括号将使用该键查找属性。非常感谢!这正是我所希望的解决方案!