带方括号的箭头功能?
Arrow function with Square Brackets?
我正在编写一些代码,我偶然发现了一些我不熟悉的东西。
export const doSomething = () => [ someFunction(), bind(stuff, stuff, stuff) ];
我从来没有见过像这样带有方括号的箭头函数,还有其他人吗?如果是这样,它的工作原理是什么意思?
它只是返回一个数组。
您可以将它与解构赋值一起使用,例如
const [someResult, boundStuff] = doSomething()
或者就像任何旧函数一样,例如
const something = doSomething()
这段代码表示你的函数doSomething
returns一个数组当
[0]
元素 - 函数 someFunction()
和
的执行结果
[1]
元素-函数bind(stuff, stuff, stuff)
.
的执行结果
这是一个快捷方式:
export const doSomething = () => {
return [ someFunction(), bind(stuff, stuff, stuff) ]
};
但是如果你想创建返回对象的快捷方式,请小心。您必须将对象括在括号 ()
中,如下所示:
export const doSomething = () => ({ name: 'John' })
.
我正在编写一些代码,我偶然发现了一些我不熟悉的东西。
export const doSomething = () => [ someFunction(), bind(stuff, stuff, stuff) ];
我从来没有见过像这样带有方括号的箭头函数,还有其他人吗?如果是这样,它的工作原理是什么意思?
它只是返回一个数组。
您可以将它与解构赋值一起使用,例如
const [someResult, boundStuff] = doSomething()
或者就像任何旧函数一样,例如
const something = doSomething()
这段代码表示你的函数doSomething
returns一个数组当
[0]
元素 - 函数 someFunction()
和
[1]
元素-函数bind(stuff, stuff, stuff)
.
这是一个快捷方式:
export const doSomething = () => {
return [ someFunction(), bind(stuff, stuff, stuff) ]
};
但是如果你想创建返回对象的快捷方式,请小心。您必须将对象括在括号 ()
中,如下所示:
export const doSomething = () => ({ name: 'John' })
.