1

阅读 MDN 关于解构的文档,我发现它可以减少许多包含分配的代码行。使用扩展变量,这可以以与 Haskell 的模式匹配相同的方式使用。例如,以下三个函数几乎是等价的:

let tail' (x:xs) = xs -- Haskell

输入空列表时的异常

let tail = ([x,...xs])=>xs; // * Javascript [ECMAScript 6th ed.+]
let tail = (xs)=>xs.slice(1) // * Javascript [ECMAScript 3rd ed.+]

*当输入一个空数组时返回一个空数组

这是另一个例子:

let conc = (a1,a2)=>[...a1,...a2]; // returns the same than...
let conc = (a1,a2)=>a1.concat(a2);

哪个是最有效的conc功能实现?

4

0 回答 0