Ecmascript 6 在没有显式赋值的情况下,javascript中的解构是如何工作的?

Ecmascript 6 在没有显式赋值的情况下,javascript中的解构是如何工作的?,ecmascript-6,Ecmascript 6,遇到下面的代码,就是不明白它是如何工作的,即使没有显式的解构赋值 const createUser = ({ userName, avatar }) => ({ userName, avatar }) console.log(createUser({ userName : 'user1', avatar : 'avatar'})) 这里确实有一个解构: const createUser = ({ userName, avatar }) => ... 因为这是一个缩写:

遇到下面的代码,就是不明白它是如何工作的,即使没有显式的解构赋值

const createUser = ({ userName, avatar }) => ({
  userName,
  avatar
})

console.log(createUser({ userName : 'user1', avatar : 'avatar'}))

这里确实有一个解构:

const createUser = ({ userName, avatar }) => ...
因为这是一个缩写:

const createUser = (params) => {
    let { userName, avatar } = params;

请注意,您的函数没有接收到两个参数,只有一个,并且正在立即对其进行解构。

这里确实有一个解构:

const createUser = ({ userName, avatar }) => ...
因为这是一个缩写:

const createUser = (params) => {
    let { userName, avatar } = params;
请注意,您的函数没有接收到两个参数,只有一个,而是正在立即对其进行解构