0

以前の質問を見ましたが、それらは整数値に関するものであり、テキスト値に関する回答が必要です。

今週初めにこれに関連する質問をしましたが、ここに行きます。以下に示すように、Make[x] は文字列値 (Acura、Honda、Toyota) と等しくなります。その Make[x] を関数 Models(Make) に渡すと、Models(Make) 関数内の変数 Acura、Honda、Toyota の変数名になるようにその文字列を取得するにはどうすればよいですか?

function Models(Make){
var Acura=['RSX','NSX','Integra',];
var Honda=['Accord','Civic','Prelude',];
var Toyota=['MR2','Celica','Camry',];
var holder = Make;
var Model = holder[Math.floor(Math.random()*holder.length)];
return Model;
}

function main(){
var Makes=['Acura','Honda','Toyota',];
var Make = Makes[Math.floor(Math.random() * Makes.length)];
var Model = Models(Make);
var Out = Make + " " + Model;
return Out;
}

document.write(main());

実行すると Make の名前が表示されますが、モデルの代わりに Make の代わりに Model の名前の文字を吐き出します。

4

1 に答える 1

2

あなたが現在持っているものであなたが求めていることをすることはできませんが、とにかくモデルのオブジェクトを作成する方が理にかなっています.

function Models(Make) {
    var Models = {"Acura": ['RSX','NSX','Integra'] /* snip */};
    return Models[Make][random()];
}
于 2013-02-21T05:38:41.483 に答える