我们如何将属性添加到JS传播操作员



我在下面添加了耐心的攻击和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)

最新更新