无法覆盖JavaScript对象的属性

时间:2013-10-24 14:50:11

标签: javascript node.js

我有一个格式化date的{​​{1}}属性的方法。用户的数组为message

messages



但是,当我这样做时,它就像下面的代码片段一样。

user.messages[i].date = formatDate(user.messages[i].date);

// logs the correctly formatted date
console.log(formatDate(user.messages[i].date));

// logs the unformatted date 
console.log(user.messages[i].date); 

2 个答案:

答案 0 :(得分:1)

在@plalx的评论的帮助下,我在这个帖子中找到了一个解决方案:

Stubbing virtual attributes of Mongoose model

答案 1 :(得分:0)

这是一个猜测,但您可以将formatteddate:“”添加到您的用户模型(或类似)中,然后尝试:

user.messages[i].formatteddate = formatDate(user.messages[i].date);

因此您无需重新配置它。