sql >> Databasteknik >  >> NoSQL >> MongoDB

JavaScript tilldelar inte ett element till objektet

Det är fullt möjligt om allokeringsobjektet är förseglade eller fryst av MongoDB.

Gör istället en kopia och lägg till din egendom i kopian, kanske med ES2018:s egendomsspridning:

allocation = {...allocation, timestamp: moment(allocation.end_date).format('x')};

...eller om du inte kan använda egenskapsspridning, Object.assign :

allocation = Object.assign({}, allocation, {timestamp: moment(allocation.end_date).format('x')});

Du måste ändra const att let i båda dessa fall, eftersom vi ändrar värdet som innehas av variabeln allocation . Eller naturligtvis, lämna det som en const och kom ihåg den modifierade versionen separat:

const updatedAllocation = {...allocation, timestamp: moment(allocation.end_date).format('x')};
response.status(200).send(updatedAllocation);

Korrekt. const gäller variabeln (allocation ), inte objektet som variabeln refererar till.



  1. Stoppa redis-servern. Varken avstängning eller stopp fungerar

  2. Mongodb $push i kapslad array

  3. Hur man kontrollerar $setDifference i två arrayer med mongo-query

  4. Rörliga medelvärden med MongoDB:s aggregeringsramverk?