我在下面添加了耐心的攻击和insranceId来传播操作员,只想看看是否有更好的方法来完成此任务?
main.js
const Response = await getData(re);
const patientId = "AW364747";
const insuranceId = "0000786622";
logger().info('Response=', { ...Response, drugName: '[REDACTED]' , patientId, insuranceId});
您拥有的是正确的。
let newResponse = {...Response, drugName: '[REDACTED]'}
如果响应中缺少药物名称属性,则会添加该属性。否则它将覆盖毒品名称属性。
let newResponse = { drugName: 'defaultname', ...Response}
将做相反的事情,如果响应包含药物名称,它将覆盖drugname:" fefualtname",或者如果不存在响应,则会添加drugname。
示例:
const Response = { prop: 'some prop', drugName: 'Original Drug'}
const spreadFirst = { ...Response, drugName: 'New drug'}
// spreadFirst = { prop: 'some prop', drugName: 'New drug'}
const spreadLast = { drugName: 'Newest Drug', ...Response}
// spreadLast = { prop: 'some prop', drugName: 'Original Drug'}
有更清晰和直接的方法
let Response = { name: 'John' }; // await getData(re);
Response.drugName = '[REDACTED]';
Response.patientId = 'AW364747';
Response.insuranceId = '0000786622';
console.log(Response)