arrow函数:如何在解构中指示不需要的参数

时间:2016-06-15 09:42:05

标签: 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;

以上代码的两个抱怨:

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

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

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

    上面的第一个抱怨显然可以通过使用其他名称来解决,但第二个仍然存在(并且任何名称被采用作为约定都必须在随后的不需要的参数中被修改)。

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

1 个答案:

答案 0 :(得分:1)

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

但是有的约定是: Standard conventions for indicating a function argument is unused in JavaScript

相关问题