JavaScript で関数パラメータとして配列を渡す
配列を個別のパラメータとして関数に渡すのは面倒で非効率な場合があります。次のコードを考えてみましょう:
const x = ['p0', 'p1', 'p2']; call_me(x[0], x[1], x[2]); // Unwieldy and prone to errors
解決策 1: Function.prototype.apply()
配列の内容をパラメータとして渡すには、Function.prototype を使用できます。 .apply() メソッド:
const args = ['p0', 'p1', 'p2']; call_me.apply(this, args);
apply() メソッドは、コンテキストと渡すパラメーターの配列という 2 つのパラメーターを取ります。この場合、これは関数のコンテキストであり、args は配列要素の配列です。
解決策 2: 引数を広げる (ES6 以降)
使用する場合ECMAScript 6 以降が可能です。代わりにスプレッド引数を使用できます:
call_me(...args);
スプレッド引数を使用すると、配列の内容をパラメータなしでパラメータとして直接渡すことができます。中間ストレージが必要です。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3