0


0

変数の値をプロンプトボックスに入力して、元の変数の警告で返ってきたらどうかと思います。

例えば: var myGoal =" answer ";`プロンプトに ` answer` 'と入力した場合、私の "` answer` "の値を取り、検索して` myGoal`を返すのが良い方法でしょう。アラート?

4 Answer


2


このような何かがトリックをするだろう:

function test(val){for(var in window)} {if(window.hasOwnProperty(i)

これは基本的にグローバルオブジェクト(ウィンドウ)内のすべてのものを繰り返し処理し、探している値と等しいものが見つかると警告を発します。


1


アプローチを少し変更しても構わないと思っている場合

var Data = new Object(); Data ["myGoal"] = "answer";
// ...

// Get response from prompt...
var response = / * ... * /;

for(データ内のvarキー){if(データ[キー] ==応答){警告(キー); }}


0


function test(){var answer = prompt( "こんにちは? あなたの名前は何ですか? "、 ''); alert(answer);}


0


あなたが望むことを達成する唯一の方法はeval関数を使うことです。 Evalは「悪」関数としても知られています。 それはあなたのコードに大規模なセキュリティホールをもたらす可能性があり、非常に非効率的です。 evalを使わないでください。

問題は、変数に割り当てられた値が常に文字列、数値、ブール値、未定義値、配列、関数、またはオブジェクトリテラルになることです。 ある変数が別の変数に割り当てられると、その変数の内容が実際に割り当てられるものになるため、変数名を値として別の変数に割り当てることはできません。

文字列を変数名に変換するのではなく、指定された値に対して明示的にテストするように書き込もうとしているテストを再設計する必要があります。