2015-12-31 88 views
-1

保持简单;我无法将新属性添加到对象。无法将新属性添加到对象

我有以下代码:

function (error, invoice) { 
    var date = new Date(+invoice.date); 
    var datestamp = date.formatDate('#D##th# #MMM# #YYYY#'); 
    invoice.datestamp = datestamp; 
    console.log(invoice) // <-- no 'datestamp' property 
} 

我已经试过各种方法,如:

Object.defineProperty(invoice, 'datestamp', {value:datestamp}); 

和:

invoice[datestamp] = datestamp; 

所有零成功。我已经检查过invoice对象是否可以使用isSealed()isFrozen()进行写入,实际上是这样。

我绝对这个困惑,我觉得已经枯竭型所有的替代品......

+0

'invoice'是一个合适的JS对象,或一个类的实例(例如,一个Mongoose文档)? – robertklep

+0

什么是“发票”?为什么功能没有名字? 'function(错误,发票){'叫?什么是'invoice.date'?可以在问题中包含“发票”对象? – guest271314

+0

发票是一个正确的js对象是的,该函数是一个回调。 – leaksterrr

回答

0

我添加.toObject()其中创建invoice,这解决了我的问题。