箭头函数:如何指示解构中不需要的参数

Mar*_*tus 3 javascript ecmascript-6

有没有办法在箭头函数参数中指示不需要的参数(以及在解构过程中)?

_我在箭头函数中使用指示不需要的参数的人为案例:

import _ from 'lodash';

const m = [];
m.push({k: 1, v: 'a'});
m.push({k: 2, v: 'b'});
m.push({k: 3, v: 'c'});

const bExists = _.filter(m, ( {_,v}, _1, _2)=>{
    return v==='b';
}).length > 0;
Run Code Online (Sandbox Code Playgroud)

对上面代码的两个抱怨:

  1. _(用于 F# 等语言)与 lodash 导入相同。不是语法错误,但仍然令人困惑
  2. 随后_必须重命名为_1_2否则会得到:

    SyntaxError:es6/app.js:严格模式下参数名称冲突

我可以简单地省略_1_2参数,但这只是因为在这个特定的示例中,不需要的参数出现在参数列表的末尾。

上述第一个抱怨显然可以通过使用其他名称来解决,但第二个仍然有效(无论采用什么名称作为约定,都必须在后续不必要的争论中被破坏)。

那么,是否有语言支持来指示箭头函数中未使用的参数或(如果失败)对此建立的约定?

Dar*_*rio 6

不,Javascript/ES6 不支持未使用参数的语法。

但是,是的,有一些约定: 用于指示函数参数在 JavaScript 中未使用的标准约定