[解決済み] JavaScript の関数に未知の数の引数を渡す
2023-02-16 07:16:46
質問
未知の数の引数を渡す方法はありますか?
var print_names = function(names) {
foreach(name in names) console.log(name); // something like this
}
print_names('foo', 'bar', 'baz');
また、渡された引数の数はどのように取得するのでしょうか?
どのように解決するのですか?
ES3 (または ES5 または古いタイプの JavaScript)
JavaScript の関数に渡される引数には、魔法のような仕組みでアクセスできます。
arguments
オブジェクトでアクセスできます。これは配列と同じように動作します。 このオブジェクトは配列と同じように動作します。
arguments
を使うと、関数は次のようになります。
var print_names = function() {
for (var i=0; i<arguments.length; i++) console.log(arguments[i]);
}
ここで重要なのは
arguments
は
ではなく
であり、配列です。 MDCにはそれに関する良いドキュメントがあります。
https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Functions#Using_the_arguments_object
もしあなたが
arguments
を配列に変換して、次のようなことができるようになります。
.slice()
,
.push()
などは、このようなものを使ってください。
var args = Array.prototype.slice.call(arguments);
ES6 / タイプスクリプト
もっといい方法がある! 新しい のリスト・パラメータ 機能は、あなたの背中を押してくれます。
var print_names = function(...names) {
for (let i=0; i<names.length; i++) console.log(names[i]);
}
関連
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] jQueryの「exists」関数はありますか?
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] JavaScriptでカンマを桁区切りにして数値を表示する方法
-
[解決済み] Javascriptにおける関数のオーバーロード - ベストプラクティス [終了しました]。
-
[解決済み】JavaScriptの関数にデフォルトのパラメータ値を設定する
-
[解決済み】JavaScriptの関数名を文字列で指定して実行する方法
-
[解決済み] モバイルWeb HTML5フレームワークの選び方【終了しました
-
[解決済み] javascript includes() 大文字小文字を区別しない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Google maps API V3 - 同一地点に複数のマーカーを設置する。
-
[解決済み] 文字列が空白であるかどうかをチェックする
-
[解決済み] 兄弟ノードを選択する方法はありますか?
-
[解決済み] CORS OriginヘッダーとCSRFトークンによるCSRF保護
-
[解決済み] Reactコンポーネントでthis.setStateを複数回使用するとどうなりますか?
-
[解決済み] JavaScriptでの大文字小文字を区別しない正規表現
-
[解決済み] ECMAScriptとは?
-
[解決済み] jQueryで入力ファイルが空かどうかをチェックする方法
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] Javascriptの配列を2つの数値フィールドでソートする