11.1 概览

默认参数值:

function findClosestShape(x=0, y=0) {
    // ...
}

剩余参数:

function format(pattern, ...params) {
    return params;
}
console.log(format('a', 'b', 'c')); // ['b', 'c']

运用解构的命名参数:

function selectEntries({ start=0, end=-1, step=1 } = {}) {
    // The object pattern is an abbreviation of:
    // { start: start=0, end: end=-1, step: step=1 }

    // Use the variables `start`, `end` and `step` here
    ···
}

selectEntries({ start: 10, end: 30, step: 2 });
selectEntries({ step: 3 });
selectEntries({});
selectEntries();

11.1.1 扩展操作符( Spread operator )(...)

在函数和构造器的调用中,扩展操作符把可迭代的值转换成参数:

> Math.max(-1, 5, 11, 3)
11
> Math.max(...[-1, 5, 11, 3])
11
> Math.max(-1, ...[-1, 5, 11], 3)
11

在数组字面量中,扩展操作符将可迭代的一组值转换成数组元素:

> [1, ...[2,3], 4]
[1, 2, 3, 4]

results matching ""

    No results matching ""