var post = _.extend(_.pick(postAttributes, 'url', 'title', 'message'), {
userId: user._id,
author: user.username,
submitted: new Date().getTime()
});
我正在关注“发现流星”一书,但他们并没有真正解释这段代码。究竟是什么意思?
答案 0 :(得分:1)
_.pick
创建一个新对象,并从旧对象中复制一组属性名称。在这种情况下,"旧对象"是postAttributes
,要从中复制的属性为url
,title
,message
。
_.extend
允许您向目标对象添加属性。在这种情况下,目标对象是_.pick
的结果对象。
结果全部成为分配给post
的对象。
<子>&#34;复印&#34;在选择是不是真的复制。原始文件被复制。引用对象,而不是复制对象。该操作是浅层副本,对_.pick
和_.extend
都不深。
答案 1 :(得分:0)
它通过从url, title, message
抽象postAttributes
属性并使用userId, author, submitted
属性扩展来返回对象。 _
是Underscorejs库的参考。