使用剩余参数代替 arguments (prefer-rest-params)

使用剩余参数代替 arguments (prefer-rest-params)

剩余参数来自于ES2016。能够在可变函数中使用这个特性来替代arguments变量。
arguments没有Array.prototype方法,因此使用起来有一点麻烦。app

详细规则

这条规则旨在标记arguments变量。函数

例子

  • 不正确的例子
function foo() {
    console.log(arguments);
}

function foo(action) {
    var args = [].slice.call(arguments, 1);
    action.apply(null, args);
}
  • 正确的例子
function foo(...args) {
    console.log(args);
}

function foo(action, ...args) {
    action.apply(null, args); // or `action(...args)`, 参照 `prefer-spread`(展开操做规则).
}

// Note: 内建arguments变量能够被覆盖
function foo(arguments) {
    console.log(arguments); // 第一个参数.
}
function foo() {
    var arguments = 0;
    console.log(arguments); // 本地变量
}

何时不使用它

这条规则不能被用在ES3/5的环境下。
ES2015 (ES6)或者以后的环境,若是不能被提醒arguments变量,你能够关闭它。prototype

相关文章
相关标签/搜索