在JavaScript中重构if和else语句?
我想重构一个if-else语句。我在网上看到了一些例子,但我还没有找到一个可以帮助我的。我还在学习在JavaScript中重构if和else语句?,javascript,if-statement,Javascript,If Statement,我想重构一个if-else语句。我在网上看到了一些例子,但我还没有找到一个可以帮助我的。我还在学习 condition 1 if(p.timestamp === p.lastTimeStamp) then let postData = { room: p.room, patient: p.id, timestamp: p.timestamp, } 我当前的函数如下所示。如果您能告诉我如何重构以下内容,我将不胜感激 postRecord(患者){ this.state.patie
condition 1
if(p.timestamp === p.lastTimeStamp)
then let postData = {
room: p.room,
patient: p.id,
timestamp: p.timestamp,
}
我当前的函数如下所示。如果您能告诉我如何重构以下内容,我将不胜感激
postRecord(患者){
this.state.patients.map(p=>{
设postData={};
if((p.id==patient.id)&&(p.timestamp!==p.lastTimeStamp)){
postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp,
替换:p.lastTimeStamp
};
}
if((p.id==patient.id)&&(p.timestamp==p.lastTimeStamp)){
postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp,
};
}
axios({
方法:“post”,
url:“/record”,
数据:postData
})
。然后(res=>{
这是我的国家({
记录成功:(res.status==200)
});
})
.catch(错误=>{
抛出新错误(err);
});
});
}
你可以拿一个,然后得到想要的零件
let postData = {};
if (p.id === patient.id) {
postData = p.timestamp === p.lastTimeStamp
? { room: p.room, patient: p.id, timestamp: p.timestamp }
: { room: p.room, patient: p.id, timestamp: p.timestamp, replace: p.lastTimeStamp };
}
您可以通过使用复选框指定额外的属性来简化条件,因为您的对象将不会在该属性之外更改:
let postData={};
如果(p.id==患者id){
postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp
};
if(p.timestamp!==p.lastTimeStamp)
postData['replace']=p.lastTimeStamp;
}
这里没有if/else语句-有两条if语句始终运行。如果您只是在执行If-else语句:
if ((p.id === patient.id) && (p.timestamp !== p.lastTimeStamp)) {
postData = {
room: p.room,
patient: p.id,
timestamp: p.timestamp,
replace: p.lastTimeStamp
};
} else {
postData = {
room: p.room,
patient: p.id,
timestamp: p.timestamp,
};
}
只需有条件地添加到对象:
let postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp
};
if(p.timestamp!==p.lastTimeStamp){
postData[“替换”]=p.lastTimeStamp;
}
不带三元运算符:
let postData={};
如果(p.id==患者id){
if(p.timestamp!==p.lastTimeStamp){
postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp,
替换:p.lastTimeStamp
};
}否则{
postData={
房间:p.room,
病人:p.id,
时间戳:p.timestamp,
};
}
}
if ((p.id === patient.id) && (p.timestamp !== p.lastTimeStamp)) {
postData = {
room: p.room,
patient: p.id,
timestamp: p.timestamp,
replace: p.lastTimeStamp
};
} else {
postData = {
room: p.room,
patient: p.id,
timestamp: p.timestamp,
};
}