javascript - 无法向对象JS添加属性

标签 javascript node.js mongoose attributes

我正在从 Mongoose 中恢复一个对象,我可以看到并访问它的所有属性,但我无法为该对象创建新属性。

我尝试过的

transfer.test= 'test';

调用顺序:

  console.log(transfer);
  transfer.test = 'test';
  console.log(transfer);
  console.log(transfer.test);

输出:

{ _id: '0000000000000303',
  Ammount: '1',
  State: 'SUCCESS',
  TimeStampStarted: '1512043753',
  LastUpdate: '1512043763',
  __v: 0 }
{ _id: '0000000000000303',
  Ammount: '1',
  State: 'SUCCESS',
  TimeStampStarted: '1512043753',
  LastUpdate: '1512043763',
  __v: 0 }
test

为什么没有呢?为什么我没有收到一些错误、警告等?

PD 我检查了传输类型,它是一个对象

最佳答案

当 console.log 一个 Mongoose 对象时,您看到的并不是它的所有信息,只是一种表示。 Mongoose 对象有很多 Mongoose 需要管理的变量。有时,这种表示不会更新。尽管它在对象中正确地存储了信息,但它并没有很好地打印出来。如果你不再需要这个对象中的 Mongoose 特性,你可以这样做

transfer = transfer.toObject();

从现在开始它将是一个 JavaScript 对象,它应该显示所有更新的内容。

关于javascript - 无法向对象JS添加属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47573670/

相关文章:

javascript - nodejs - 奇怪的 "Can' t 在发送后设置 header “案例

mysql - 在 Node JS 中安排多个函数以特定时间间隔运行(CRON JOB)

javascript - 如何根据 Prop 渲染不同的元素?

javascript - Jquery/Javascript - 每个日期到时间戳

javascript - 停止将鼠标单击事件传播到父 div

node.js - swagger-ui-express 不在浏览器中呈现,但在 Postman 中具有响应正文

javascript - JS/J查询 : Click Event After AddClass

node.js - 使用express,mongodb作为服务器数据库的 Node js中的用户管理

node.js - NodeJS Express 和 Mongoose : How to get data from array not in one but in multi table columns

node.js - 使用 Mongoose 在过期日期后自动更新 mongo 文档