-
ID:uZRRhH さんの質問

javaScriptの引数について質問です。

関数の引数で渡した複数の値を、その関数内で定義されている関数の引数として、そのまま利用することは可能でしょうか?

やりたいことは以下のようなことです。

function hoge(){
 huge(○○);
}

hoge(1,"test","あああ");

○○の部分に、hogeで渡された引数をそのまま設定したいです。
ただし、
function hoge(number,text1,text2){
  huga(numer,text1,text2);
}
のようなやり方ではNGで、もっと汎用性のあるやり方を探しています。

みんなの回答 4 件

ID:120ZNL さんの回答

function hoge(obj){
 alert(obj.num + obj.text);
 fuga(obj);
}

function fuga(obj){
 alert(obj.num + obj.comment);
}

hoge({num:1, text:"test", comment:"あああ"});​

とかオブジェクトで渡してあげるのはどうだろう。

ID:.T9KOz さんの回答

ちょいちょい技術的にコアな質問あるけど、JSならJSの、PSならPS専門の掲示板の方がレスポンスいいんでない? ここはもっとざっくりした感じのQ&Aじゃないかな。

ID:dIrw1w さんの回答

JSの関数内ではargumentsオブジェクトという引数情報を持っているオブジェクトが使用できるので、それをそのまま渡せば良いと思います。

ID:qNj34t さんの回答

こんな感じかな。

function hoge(){ 
    // argumentsというのに引数が入ってくる 
    // arguments[0]が第一引数, arguments[1]が第二引数, arguments[2]が第三引数, ...)  
    // で、fuga(arguments[0], arguments[1], arguments[2], ...)とやるには 
    //  fuga.apply(null, arguments) とやるとよい 
    fuga.apply(null, arguments); 
}
最終更新日:2012-12-27 (4,282 views)

関連するトピックス

ページ上部に戻る