javaScriptの引数について質問です。
関数の引数で渡した複数の値を、その関数内で定義されている関数の引数として、そのまま利用することは可能でしょうか?
やりたいことは以下のようなことです。
function hoge(){
huge(○○);
}
hoge(1,"test","あああ");
○○の部分に、hogeで渡された引数をそのまま設定したいです。
ただし、
function hoge(number,text1,text2){
huga(numer,text1,text2);
}
のようなやり方ではNGで、もっと汎用性のあるやり方を探しています。
みんなの回答 4 件
function hoge(obj){
alert(obj.num + obj.text);
fuga(obj);
}
function fuga(obj){
alert(obj.num + obj.comment);
}
hoge({num:1, text:"test", comment:"あああ"});
とかオブジェクトで渡してあげるのはどうだろう。
ちょいちょい技術的にコアな質問あるけど、JSならJSの、PSならPS専門の掲示板の方がレスポンスいいんでない? ここはもっとざっくりした感じのQ&Aじゃないかな。
JSの関数内ではargumentsオブジェクトという引数情報を持っているオブジェクトが使用できるので、それをそのまま渡せば良いと思います。
こんな感じかな。
function hoge(){
// argumentsというのに引数が入ってくる
// arguments[0]が第一引数, arguments[1]が第二引数, arguments[2]が第三引数, ...)
// で、fuga(arguments[0], arguments[1], arguments[2], ...)とやるには
// fuga.apply(null, arguments) とやるとよい
fuga.apply(null, arguments);
}
関連するトピックス