【发布时间】:2018-11-25 00:54:28
【问题描述】:
我的代码:
const users = [ { id: 1, name: 'user1' }, { id: 2, name: 'user2' } ]
p = new Promise( resolve => resolve(users) )
p.then( (user) => console.log(user) )
将以下日志返回给我:
[ { id: 1, 名称: 'user1' }, { id: 2, 名称: 'user2' } ]
如果我改变它如下,
users.then( ([user]) => console.log(user) )
我收到以下日志:
{ id: 1, name: 'user1' }
我不太明白为什么第二个只记录数组中的第一个元素。
【问题讨论】:
-
users.then( ([user1, user2]) => console.log(user1, user2) )- 这会记录两个用户。 -
因为
[user]使用的方式是破坏性的,即从数组中获取第一项并为其命名为user。
标签: javascript node.js syntax parameters arguments