1. ホーム
  2. javascript

[解決済み] 関数定義の「...args」(3つの点)はどういう意味ですか?

2022-03-02 04:41:20

質問

Javascriptのこの構文を読んで、とても混乱しました。

router.route('/:id')
.put((...args) => controller.update(...args))
.get((...args) => controller.findById(...args));

とは何ですか? ...アーギュメント とは?

どのように解決するのですか?

に関して (...args) => , ...args リストパラメータ . これは常にパラメータリストの最後のエントリでなければならず、以前のパラメータに割り当てられていないすべての引数を含む配列が割り当てられることになります。

基本的には arguments オブジェクト . と書く代わりに

function max() {
  var values = Array.prototype.slice.call(arguments, 0);
  // ...
}
max(1,2,3);

を書くことができます。

function max(...value) {
  // ...
}
max(1,2,3);

また、アロー関数 には arguments オブジェクト のように、これはバリアド(矢印)関数を作成するための唯一の方法です。


として controller.update(...args) を参照してください。 foo(...arg)"(関数呼び出しの3つの点)の意味は何ですか? .